我现在知道应该使用ADD
复制应用程序的源代码以生活在docker容器内部。
这似乎是一个好主意,但如果我希望能够更新我的应用程序源代码说 - 每天两次,甚至更频繁?
最可行的解决方案是将源代码保留在我的应用程序之外。然后我可以保持机器运行,只需使用GIT更新源代码。
机器会像这样创建:
docker run -p 80:80 -v /home/adam/projects/docker-test/src:/var/www/html webserver
这意味着,如果我从onprem服务器控制机器,但基础设施在EC2上,每次打开网站时,文件都将通过互联网提取。
这个问题的最佳解决方案是什么?我是否能够继续重新部署具有更新源代码但没有停机时间的容器?
答案 0 :(得分:1)
实际上,它是should be copied with COPY
, not ADD
,以限制缓存失效。
最可行的解决方案是将源代码保留在我的应用程序之外。
是的,但是不是通过远程源(git服务器)引用它,而是可以有webhook(如GitHub one),每次推送到该git服务器时,都会拉来自所述回购并在本地保存最新的源代码。
然后将该本地存储库作为图像中的卷安装。