大纲:

使用compose准备:
准备一个yml文件,把要启动的所有容器的配置都写在yml文件里边,然后可以使用docker compose命令将yml文件中所有容器全部批量启动或者停止或者删除



wordpress+mysql容器启动实例:
wordpress是一个开源博客系统,预计hub.docker.com有相关镜像,在wordpress上写博客,然后博客内容存储到mysql数据库,即wordpress应用要访问mysql且是内部访问mysql,因为人们实际在浏览器访问的是wordpress应用,所以在启动wordpress容器和mysql容器之后,需要在docker内部进行容器间访问,即2个容器要加入自定义网络,故要创建自定义网络,并在mysql容器启动时指定创建的wordpress要连接的数据库名称,wordpress和mysql容器启动都要设置docker开机自启

过程:
1.创建自定义网络blog,并用docker network ls查看是否创建成功


2.启动mysql容器
启动容器前可以把之前相关容器都删了,以免造成影响


3.启动wordpress容器

4.浏览器访问wordpress容器,并输入用户名密码安装wordpress:
因为在容器启动的时候已经连上了mysql容器,所以估摸在启动wordpress容器的时候已经在mysql容器的workpress数据库中创建了wordpress相关数据表,在浏览器访问wordpress做一些登录操作时,比如创建用户名密码啥的这些应该都保存在了mysql容器的wordpress数据库中的数据表中





wordpress安装完成后,登录wordpress后台:

wordpress安装完成后,不登录wordpress后台,直接访问wordpress容器:



wordpress安装完成后,登录wordpress后台发布文章(类似csdn):









不使用docker compose yml文件缺点:
假如要在别的服务器上也安装一套wordpress,那么就需要把之前机器上安装的wordpress容器+mysql容器的命令都记住,太麻烦,所以就用到compose命令执行的yml文件,即把这俩容器的启动统一写到yml文件中,然后在新服务器上直接使用docker compose命令运行这个yml文件即可,就把需要启动的容器统一都启动了,即使需要做容器迁移,也只需要把yml文件迁移即可
docker常用命令:
docker compose down:下线指的是移除yml文件中创建的容器和资源
docker compose start x1 x2 x3:指的是批量启动x1、x2、x3三个容器应用
启动和上线的区别是上线是第一次创建应用并启动,启动是之前已经创建过应用并启动,可能停了再重新启动容器应用
docker compose x1 x3:x1、x3停止容器应用
docker compose scale x2=3:对某一个应用扩容。假如说x2这个容器应用开始只启动了一份,现在docker compose scale x2=3,那么docker发现x2容器应用只启动了一份,会再另外追加启动2份x2实例应用