我在玩 docker 并在使用 --mount 而不是 -v 安装 docker 卷时遇到了问题。在我看来,弹出的错误无效,但可能我在这里遗漏了一个小细节。
在 --mount 场景中,我要将容器中创建的图像绑定到的路径被视为不是绝对的。
我在 Windows 10 机器上运行 Docker
我提取了 jenkins/jenkins:lts 映像并希望启动 2 个使用相同配置的容器。如前所述,我使用它只是为了玩弄 docker,并且正在探索音量系统是如何工作的。
我所做的是创建一个用于共享配置的 docker 卷。
docker volume create jenkins_cfg
然后我尝试运行 2 个容器。第一个容器开始于:
docker run -d -p 8081:8080 --name jenkins2 -v jenkins_cfg:/var/jenkins_home jenkins/jenkins:lts
哪个工作正常..
第二个容器开始于:
docker run -d -p 8085:8080 --name jenkin5 --mount source=jenkins_cfg,target=var/jenkins_home jenkins/jenkins:lts
这会导致错误“C:\Program Files\Docker\Docker\Resources\bin\docker.exe:来自守护进程的错误响应:类型“volume”的安装配置无效:安装路径无效:'var/jenkins_home' 安装路径必须是绝对的。请参阅“C:\Program Files\Docker\Docker\Resources\bin\docker.exe run --help”。”
/var/jenkins_home 也无法正常工作。
虽然 -v 也要求相同的目标文件夹,但我假设该文件夹也可以在 --mount 的目标选项中工作。可能,我在这里忽略了一些东西......