在Windows的Docker容器中运行testcontainers

时间:2018-04-11 12:49:31

标签: docker docker-for-windows testcontainers

documentation中所述,如果我想在docker中运行testcontainers,我必须考虑以下几点:

  1. Docker套接字必须通过卷装
  2. 可用
  3. ' local'源代码目录必须在Testcontainers运行的容器内的同一路径上进行卷装:,以便Testcontainers能够为其生成的容器设置正确的卷装入。
  4. 如果我使用 Docker for Windows ,如何遵守第二点,主要是-v $PWD:$PWD条件?

1 个答案:

答案 0 :(得分:0)

在Windows上,而不是套接字,docker使用命名管道。

docker run -v \\.\pipe\docker_engine:\\.\pipe\docker_engine

但是你需要Windows v1709和特殊版本的Docker for Windows,因为这个功能是实验性的。

更多信息: https://blog.docker.com/2017/09/docker-windows-server-1709/

对于$ PWD,在Windows cmd上,您可以使用%CD%变量执行相同的工作。 Powershell也有$pwd,与linux相同。但不幸的是,它们不适用于docker-compose,因为它们不是真正的环境变量。

我认为最简单的方法是执行一个简短的脚本来在Windows上创建.env文件,其中PWD =将设置为当前目录:

 echo PWD=%cd% > .env

你可以在docker-compose中使用$ PWD,就像在Linux上一样。