我学习了github和docker的基础知识,并且在我的环境中都很好地工作。在我的服务器上,我有项目目录,每个目录都有一个docker-compose.yml来运行必要的容器。这些项目目录还具有该特定应用程序的实际源文件,这些源文件在启动时映射到容器内的虚拟位置。
我现在的问题是-如何创建一个专业工作流来封装所有这些?整个目录(包括停靠-撰写文件)是否应该位于github上?因此,每次进行更改时,我都会将代码推送到远程,将SSH推送到服务器,提取最新的文件并重新构建容器。当然,这种重建意味着每次都要从dockerhub提取所需的映像。
发布于 2018-01-15 23:55:32
整个目录(包括停靠-撰写文件)是否应该位于github上?
最好的做法是保存所有源代码,包括dockerfile,配置.有版本的。因此,您应该将所有的源代码、dockerfile和dockerfile放在一个git临时存储库中。对于github上具有码头形象的项目来说,这是非常常见的。
因此,每次更改时,我都会将代码推送到远程,SSH推送到服务器,提取最新的文件并重新构建容器。
理想情况下,应该使用像詹金斯这样的工具将这个过程封装在CI工作流中。基本上,您可以将代码推送到git存储库,这会触发jenkins作业来编译代码、构建映像并将图像推送到坞注册中心。
当然,这种重建意味着每次都要从dockerhub提取所需的映像。
Docker足够聪明,可以缓存以前所提取的基本图像。因此,它只会在第一次构建时提取一次基本图像。
https://stackoverflow.com/questions/48275618
复制相似问题