如何在生产环境中快速切换 Docker 个容器?

How to quickly switch Docker containers on production?

想象一下,我已经创建了上传小猫图片的服务,并在生产环境中使用了 Docker 容器。 为此,我使用 PHP 5.5 服务创建了 Docker 图像,从真实的 OS 安装了我的应用程序的 "upload" 文件夹,还安装了带有源代码的文件夹。 一段时间后,我决定改进我的应用程序,更改源代码,现在它需要不同于 Docker 中存在的环境。 例如,现在我需要 PHP 5.6 而不是 PHP 5.5

所以当我想更改我的应用程序的源代码时,我可以通过使用符号链接切换安装的源代码文件夹来完成(或者不能,因为 Docker 会保留套接字?如果是这样,如何切换源代码代码?我应该在不安装的情况下直接在容器中完成吗?)。

但是切换源码后如何快速切换Docker容器?

最快的方法是在容器中执行 shell 会话,更新环境,重新启动 php 服务。由于您已经挂载了源代码,因此无需切换。

最好的方法是创建具有所需环境的 docker 映像并停止先前的容器,然后 运行 新映像安装适当的目录。