在我们使用Docker时,如果需要运行多个容器,在没有Docker-compose之前,你可能需要一个个的定义和启动。,docker-compose诞生之后,你只需要把这些容器、依赖关系、端口映射等配置在一个yaml文件中即可,大大提升了管理效率。今天就以一个Python项目来说说Docker-compose的使用步骤。,flask项目中要用到mysql,因此我们准备2个容器:mysql镜像、flask项目镜像。,flask代码目录如下:,首先来编写MySQL连接文件settings.py:,再编写代码文件manage.py,代码很简单,就是开启一个flask服务,需要用到上述的mysql服务:,进程管理方面,我们使用gunicorn来管理服务,因此编写gunicorn配置文件gunicorn_conf.py:,接着,我们来编写Dockerfile:,然后,再编写一下flask项目依赖文件requirements.txt:,编写docker-compose.yml,我们要描述应用的构成(一个web服务器和一个数据库)、使用的Docker镜像、镜像间的连接、挂载到容器的数据卷、服务开放的端口。,备注: networks的配置是为了让flask应用和mysql应用同处在一个网络,这样才能保证容器间的连通性。 当然保证容器间的连通性,还有其他方式,如用–link配置。用networks配置起来更加方便。,代码完成后,开启服务:,
,服务正常开启,来测试一下两个容器的连通性。,进入flask容器
docker-compose exec flask bash
,ping一下mysql容器:
ping -c 3 mysql
,显示信息如下:,说明容器间互联成功。整个项目就运行起来了。,本文以一个简单的flask项目使用docker-compose构建起来,当我们有多个容器,并且容器间有依赖相关的时候,使用docker-compose来统一管理非常方便。,以上就是docker-compose统一管理多个容器使用详解的详细内容,更多关于docker-compose容器管理的资料请关注其它相关文章!