2016-12-01 77 views
3

我使用的是Windows 7企业版如何使用本地主机卷装入到码头工人,码头工人的容器,构成

Docker Client version: 
Version:  1.12.2 
API version: 1.24 
Go version: go1.6.3 
Git commit: bb80604 
Built:  Tue Oct 11 17:00:50 2016 
OS/Arch:  windows/amd64 

Docker Server version: 
Version:  1.12.3 
API version: 1.24 
Go version: go1.6.3 
Git commit: 6b644ec 
Built:  Wed Oct 26 23:26:11 2016 
OS/Arch:  linux/amd64 

docker-compose version: 
docker-compose version 1.9.0, build 2585387 
docker-py version: 1.10.6 
CPython version: 2.7.12 
OpenSSL version: OpenSSL 1.0.2h 3 May 2016 

我无法弄清楚如何安装卷搬运工,compose.yml文件中使用时,在窗户上的码头工具箱。

以下是docker-compose.yml文件。

version: '2' 
services: 
    myapp: 
     build: 
      context: . 
      args: 
       ADMIN_PASS= welcome1 
     ports: 
     - "7001:8001" 
     volumes: 
     - "/C/myapp/gradleBuild/myappEar/libs:/myappEar" 
当我运行下面 docker-compose up

是我得到

ERROR: for myapp Cannot create container for service myapp: create \C\myapp\gradleBuild\myappEar\libs: "\\C\\myapp\\gradleBuild\\myappEar\\libs" includes invalid characters for a local volume name, only "[a-zA-Z0-9][a-zA-Z0-9_.-]" are allowed 
←[31mERROR←[0m: Encountered errors while bringing up the project. 

的错误,当我改卷部分

volumes: 
    - "/c/myapp/gradleBuild/myappEar/libs:/myappEar" 

它抛出了同样的错误

而且当我最终将卷部分更改为

volumes: 
    - "C:/myapp/gradleBuild/myappEar/libs:/myappEar" 

它抛出下面的错误

ERROR: for myapp Cannot create container for service myapp: Invalid bind mount spec "C:\\myapp\\gradleBuild\\myappEar\\libs:/myappEar:rw": Invalid volume specification: 'C:/myapp/gradleBuild/myappEar/libs:/myappEar:rw' 
←[31mERROR←[0m: Encountered errors while bringing up the project. 

谁能帮我度过这次难关?

在此先感谢。

回答

3

请注意,如果您使用的是docker toolbox(意思是通过VirtualBox VM的码头工具),则默认情况下只有/c/users/mylogin可用。
如果您的路径不包括c:\Users\myLogin,您需要declare other mount locations

您只能通过Windows 10上的HyperV VM访问更多的C驱动器(您没有,因为您在Windows 7上)。

+0

我在'/ c/Users//myapp'中添加了'myapp'文件夹,并更改了'docker-compose'文件并尝试运行'docker-compose up'但是,仍然有相同的错误 错误:对于myapp无法创建服务myapp的容器:创建\ c \ Users \ mreddy \ myapp \ gradleBuild \ myappEar \ libs:“\\ c \\ Users \\ mreddy \\ myapp \ \ gradleBuild \\ myappEar \\ libs“包含本地卷名称的无效字符,只允许”[a-zA-Z0-9] [a-zA-Z0-9 _.-]“ ←[31mERROR←[0m :在提出项目时遇到错误。“ – beginner

1

在您的码头工人,撰写图像您已经安装了卷这样:

volumes: - "/C/myapp/gradleBuild/myappEar/libs:/myappEar"

在Windows上,提到使用以下格式安装搬运工卷:

c:\<path>:/c:\<container path> 

更多信息可发现here

+0

我也是这样做的。但是,没有运气它会抛出一个不同的错误,说'无效的卷规格' – beginner

+0

你装的是什么类型的图像? –

+0

它是一个使用'C:/ Users/mreddy/myapp'文件夹中的文件将应用程序部署到WL Server的weblogic映像。 – beginner