为nginx,uwsgi,django构builddocker容器是一个好方法

我有一个方法,使用基本的操作系统映像来构build一个容器内的nginx,uwsgi,django,以便在云服务上快速部署网站。 而且我也成功地构build了一个反向代理来指向不同的Django应用程序,但仍然在一个容器内。 这种方法的缺点是,当我更新一个服务或应用程序时,我需要彻底销毁整个容器,并创build一个包含所有服务的新容器。 因此,我想为nginx,uwsgi构build一个容器,每个django应用程序都有一个容器。 总之,我想分开的应用程序和服务每个容器。 大部分教程在线将这样的组合部署在一个容器内。

所以我的问题是什么是最好的方法呢? 对于像nginx,uwsgi这样的服务,我应该在没有基础操作系统映像的情况下构build它们,而只是构build服务映像,或者我应该使用基本操作系统映像构build它们,然后将服务添加到顶层? 另外,对于我的Django应用程序,我应该为每个应用程序构build一个基本的操作系统映像,或者只是用python映像启动基础?

是的,你需要单独部署每个服务,NGINX服务器将侦听80(http)或443(https)端口作为所有其他容器的反向器poxy。

您可以使用docker-compose通过文件运行所有容器,还需要创builddockernetworking,以帮助您为任何服务升级实现零停机。

互联网上有更多的例子。

看看博客: https : //devopsdevelopment.wordpress.com/2017/08/02/how-to-configure-docker-with-nginx-and-php-application/