我尝试使用docker设置单元测试agains数据库。我使用库,在测试期间运行数据库映像。 Docs说:
Testcontainers将尝试使用。连接到Docker守护程序 遵循以下策略:
环境变量:
DOCKER_HOST (this should be set to an HTTP/HTTPS connection rather than a unix socket at present) DOCKER_TLS_VERIFY DOCKER_CERT_PATH
默认值:
DOCKER_HOST=https://localhost:2376 DOCKER_TLS_VERIFY=1 DOCKER_CERT_PATH=~/.docker
如果安装了Docker Machine,则为docker机器环境 找到第一台机器。为此,Docker Machine需要在PATH上 成功。
我在Ubuntu 16.04中安装了docker,但是没有强调如何配置docker守护进程以与此测试库一起使用。有帮助吗?
答案 0 :(得分:0)
根据您提供的文件摘要:
(这应该设置为 HTTP / HTTPS连接,而不是目前的unix套接字)
听起来这个软件不支持通过unix套接字与Docker守护进程通信,这是常规docker
CLI在DOCKER_HOST
时尝试连接到docker的默认方法未设置。
除了默认的/var/run/docker.sock unix socket之外,您还需要配置本地运行的守护程序以侦听tcp套接字。
您可以通过生成TLS证书并将它们放在客户端和服务器上来手动设置它。有关此程序的详细信息,请参阅Docker官方文档中的Protect the Docker daemon socket文章。