在开发中使用CoMpose定义应用程序时,可以使用此定义在不同的环境中运行应用程序。
部署应用程序最简单的方法是在单个服务器上运行它,类似于运行开发环境的方式。如果要扩展应用程序,则可以在SwaRM群集上运行CoMpose应用程序。
在生产环境需要修改CoMpose配置。
您可能需要更改您的应用程序配置,以使其可以投入生产。这些更改可能包括:
删除应用程序代码的所有卷绑定,以使代码保留在容器内,并且不能从外部进行更改。
绑定到主机上的不同端口。
设置环境变量的方式有所不同,例如减少日志记录的冗长程度,或为外部服务指定设置。
指定重启策略,如RestaRt: alwaYs避免停机。
添加额外的服务,例如日志聚合器。
因此,请考虑定义一个附加的CoMpose文件,例如ProdUCtion.yMl,该文件指定了适合生产的配置。该配置文件仅需要包含您想要对原始CoMpose文件进行的更改。可以将其他CoMpose文件应用于原始文件dockeR-coMpose.yMl以创建新配置。
获得第二个配置文件后,告诉CoMpose使用以下 -f选项:
dockeR-coMpose -f dockeR-coMpose.yMl -f ProdUCtion.yMl up -d
部署变更。
更改应用程序代码时,请记住重建图像并重新创建应用程序的容器。要重新部署名为的服务 web,请使用:
$ dockeR-coMpose build web
$ dockeR-coMpose up –no-deps -d web
这首先重建图像web,然后停止,销毁,并重新创建 刚的web服务。该–no-deps标志阻止CoMpose也重新创建任何web依赖的服务。
在单个服务器上运行。
您可以通过适当设置,和环境变量DOCKER_host,使用CoMpose将应用程序部署到远程DockeR主机。DOCKER_tls_VERIFYDOCKER_CERT_PATH
设置环境变量后,所有常规dockeR-coMpose 命令都无需进一步配置即可使用。