我在Docker上工作了几个星期,我可以说我喜欢它,我明白了。但我无法弄清楚的是如何“转移”我目前在Docker解决方案上的设置。我想我不是唯一一个,这就是我的意思。
我是Python人,更具体地说是Django。所以我通常都有这个:
当我想要升级和/或重新启动应用程序时(我使用fabric执行这些任务)我连接到服务器,导航到app文件夹,运行git pull
,重新启动处理的超级用户任务Gunicorn重新加载我的应用程序。热潮,完成。
但是当我使用Docker时,修改此设置的正确(更好,更多Docker-ish)方法是什么?我是否应该以某种方式连接到docker image bash每次我想升级应用程序并运行升级或(从我看到的)我应该将应用程序暴露在Docker镜像文件夹中并运行标准升级过程吗?
希望你得到老同学的困惑。我打赌Docker的家伙正在考虑这个问题。干杯!
答案 0 :(得分:2)
对于开发,docker用户通常会将其构建目录中的文件夹挂载到Dockerfile所在的同一位置的容器中,否则COPY
。这允许快速开发,其中最多需要弹回容器而不是重建图像。
对于生产,您希望在图像中包含所有内容而不更改它,只有持久数据在卷中,代码在图像中。当您对代码进行更改时,您将构建一个新映像并替换正在运行的正在运行的容器。
登录容器并手动更新内容是我在开发Dockerfile时要测试的,而不是管理正在开发的应用程序。