docker stack部署Windows卷路径前面有工作目录

时间:2017-07-21 10:34:51

标签: docker msys

我正在使用具有堆栈部署的docker compose文件。我的码头客户端是17.04。这是令人讨厌的撰写文件片段:

version: '3.1'
services:
  identityservice:
    image: registry.mms.local/identityservice:1.94.20117
    networks:
     - microlise_net
    depends_on:
     - identityservicedb1
     - identityservicedb2
     - identityservicedb3
     - identityservicedbarbiter
    volumes:
     - C:\var\storage\logs:C:\storage\logs
    deploy:
      placement:
        constraints: [node.labels.platform == windows]
    .........

当我使用git bash来部署它时,服务无法复制并检查我在卷映射中看到的服务

 "Mounts": [
                {
                    "Type": "bind",
                    "Source": "G:\\repos\\IdentityService\\Microlise.IdentityServer.Microservice/C:\\var\\storage\\logs",
                    "Target": "C:\\storage\\logs"
                }
            ]

正如您所看到的那样,源路径的前面是我的工作目录。

我尝试了各种格式。有些会删除前置路径但不起作用,其他路径仍然存在。

// C:在/ var /

// C / VAR

\ C:\ VAR

\ C:\ VAR

/ C:\ VAR

// C:\ VAR

/ C \ VAR

// C \ VAR

我还发现了一个环境varialbe来防止路径被追加,但是我根本无法运行docker命令。

MSYS_NO_PATHCONV=1

如果我使用Docker运行任务从TFS部署,我也会看到这个。

我错过了什么? Windows docker主机的正确路径格式是什么?文档有点无益。

1 个答案:

答案 0 :(得分:0)

首先,请确保您已在docker设置中共享了磁盘驱动器。

“坐骑”部分中的正确路径应如下所示:

 /host_mnt/c/var