如何在开发环境中有条件地安装主机容器卷和在构build时添加?
假设我将我的代码从github ~/repos/shinycode
。
$> cd ~/repos/shinycode $> ls Dockerfile www/index.html $> cat Dockerfile FROM nginx ADD www /usr/share/nginx/html
对于部署,一切工作正常:从github签出并运行docker build
。
然而,在开发环境中,我希望使用相同的Dockerfile
运行容器,而且还要在www
目录中实时编辑文件,例如,如果向Dockerfile
提供-v www:/usr/share/nginx/html
选项docker run
。
这种情况下的最佳做法是什么? 我应该有一个单独的Dockerfile
没有最后的ADD
命令的开发? 我是以完全错误的方式去解决这个问题的吗?
谢谢
您可以使用相同的Dockerfile,并使用任何外部卷安装在映像的/ usr / share / nginx / html文件夹中。 卷的安装优先于文件系统,您将不会在该位置的图像中看到任何内容。
- Docker Angular Node Sass无法为您当前的envfind一个绑定:使用Node.js 8.x的Linux 64位
- Gradle依赖于自己的任务。 如何在liquibase和docker-compose之后运行Inttesting
- 详细的Docker服务错误输出
- Windows上的Docker运行缓慢,为什么?
- 了解Docker / Docker-Compose上的Gunicorn和Flask
- 来自服务器的错误:错误拨号后端:拨号tcp 10.9.84.149:10250:getsockopt:连接被拒绝
- 在Mac上的Docker中运行Keras时的内存问题
- 在Docker中运行elasticsearch
- 使用docker和SQS的AWS Beanstalk上的Sinatra应用程序