在Windows上的Docker工具箱卷不会刷新容器上的更改
我开始与Windows上的docker,我正在尝试使用卷来pipe理容器中的数据。
我的主机环境是:
- Windows 8.1
- Docker工具箱1.8。
- 虚拟箱5.0.6
我已经使用下面的Dockerfile创build了一个ngnix镜像。
Dockerfile
FROM centos:6.6 维护者afym ENV WEBPORT 80 运行yum -y更新; yum干净一切 RUN yum -y install epel-release; yum干净一切 运行yum -y安装nginx; yum干净一切 运行回显“守护进程closures” >> /etc/nginx/nginx.conf VOLUME / usr / share / nginx / html EXPOSE $ WEBPORT CMD [“/ usr / sbin / nginx”]
我使用以下命令创build了一个ngnix容器。
docker run -d --name nge -v // c / Users / src:/ usr / share / nginx / html -p 8082:80 ng1 b738fef9cc4d135416a8cca4caf869acf944319b7c3c61129b11f37f9d891598
然后我去我的浏览器,我可以看到网页:
但是,当我对我的index.html文件进行更改时,它不会在浏览器上刷新
编辑我的文件
在我的浏览器(ctrl + f5)
我去了VirtualBox机器来检查我的共享目录选项是否正常。
然后我用下面的命令检查我的nge容器。
docker检查ng1
Docker检查
卷的情况如何? 为什么我看不到我的变化?
几天后,我可以find解决scheme。
Windows上的Firstable docker甚至在MAC上使用VirtualBox上的boot2docker实例。
图
在MAC上
在Windows上
接下来,官方docker的文档说:
docker工人数量
Docker机器尝试自动共享您的/ Users(OS X)或C:\ Users(Windows)目录
但是,find一个解决scheme后,我决定改变默认的c /用户到另一个path只为了维持秩序。 考虑到这一点,我做了以下步骤:
- 定义您自己的工作区目录。 在我的情况下是/ e / arquitectura (可选。如果你想要你可以使用默认的path是/ c / Users )
- validation虚拟机上的configuration(在默认机器上,转至>configuration>共享目录 )
- join到默认机器并使用别名装载目录
sudo mount -t vboxsf alias-name-virtualbox some-path-in-boot2docker #在我的情况下(boot2docker实例) $ cd $ mkdir arquitectura $ sudo mount -t vboxsf arquitectura / arquitectura
- 最后创build一个新的容器或重新启动一个现有的容器,如果你没有改变c / user /path
#在我的情况(docker客户端) $ docker run -d --name nge -v // arquitectura / src:/ usr / share / nginx / html -p 8081:80 ng1
现在起作用了。
- redis-ha:无法在集群中创build指定数量的主设备
- Docker插件:java.io.FileNotFoundException:/ src / main / docker / Dockerfile gradle-docker失败
- Jenkins Docker插件显示为离线
- Dockerizing Web应用程序(WAR文件)
- Docker Windows 7:无法findMAC地址错误的匹配IP
- docker私人registry – 方法不允许405
- 我如何使用容器上的本地文件?
- 如何使用docker-compose将localhost卷挂载到docker容器
- Docker链接容器 – 环境variables不被显示