use*_*546 2 deployment docker dockerfile
我有两个卷的文件创建的docker image(mybase)
# set volume mount points for installation and home directory
VOLUME ["/usr/local/data", "/var/local/data"]
Run Code Online (Sandbox Code Playgroud)
现在我想要生产新的图像,将数据作为图像的一部分,以便我可以拉它.但我不知道如何访问这些数据.
我想做这样的事情.这将是我的新作品Dockerfile for prod,它将从当前创建图像
FROM mybase
ADD /usr/local/data:/usr/local/data
Run Code Online (Sandbox Code Playgroud)
但那个目录不在主机上,所以我不知道如何添加它
根据数据的性质,您可能还会将其视为图像的一部分.在这种情况下,您可以随图像携带这些文件.您可以将其构建为基本映像和特定构建的映像,该映像将构建在可访问所需文件的主机上(例如,CI构建节点):
FROM mybase
ADD <source of installation> /usr/local/data
ADD <source of the home data> /var/local/data
Run Code Online (Sandbox Code Playgroud)
这(每构建可能版本)的新形象将与的内容被拉出/usr/local/data并/var/local/data在目标环境.
在环境(生产)上运行时,如果需要,您仍可以使用数据容器技术:
docker run --it -v /usr/local/data -v /var/local/data --name my_app_data_container <my_repo>/<my_app>:<build> /bin/false
docker run -d --volumes-from my_app_data_container --name my_app_daemon <my_repo>/<my_app>:<build>
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2629 次 |
| 最近记录: |