我是一个Docker的初学者,使用的是Windows机器。但是我在使用volumes挂载文件时遇到了问题。文档关于在OSX和Windows上挂载文件有以下说明:
注意:如果你在Mac或Windows上使用Docker Machine,则Docker守护程序仅能有限地访问你的OS X/Windows文件系统。Docker Machine尝试自动共享你的 /Users
(OS X)或C:\Users
(Windows)目录-因此,你可以使用docker run -v /Users/<path>:/<container path> ...
(OS X)或 docker run -v /c/Users/<path>:/<container path ...
(Windows)来挂载文件或目录。而所有其他路径都来自于你的虚拟机文件系统。
我有一个小的nginx Dockerfile:
FROM centos:6.6
MAINTAINER afym
ENV WEBPORT 80
RUN yum -y update; yum clean all
RUN yum -y install epel-release; yum clean all
RUN yum -y install nginx; yum clean all
RUN echo "daemon off;" >> /etc/nginx/nginx.conf
VOLUME /usr/share/nginx/html
EXPOSE $WEBPORT
CMD [ "/usr/sbin/nginx" ]
创建一个简单的容器
docker run -d --name simple -p 8082:80 ng1
8875448c01a4787f1ffe4c4c5c492efb039e452eff957391ac52a08915e18d66
创建一个带有卷的容器
我的Windows主机目录
使用 -v 选项创建 docker 容器
docker run -d --name simple2 -v /c/Users/src:/usr/share/nginx/html -p 8082:80 ng1
无效的值“C:\Users\src;C:\Program Files\Git\usr\share\nginx\html” for flag -v: bad mount mode specified : \Program Files\Git\usr\share\nginx\html 请查看 'C:\Program Files\Docker Toolbox\docker.exe run --help'。
检查 ng1 镜像
docker inspect ng1
我在创建带有卷的 Docker 容器时出了什么问题?
谢谢。
Windows
,并且您说自己是Docker的初学者,我想建议您请看一下Kinematic。 这是一个清晰易懂的方式来理解挂载卷、管理容器等等。希望能对您有所帮助。 :) 祝好! - chanakya devraj