5.1 Compose基础

系列 - Docker容器编排
摘要
Compose 是 Docker 的一个高级工具,用于定义和运行多容器 Docker 应用程序。通过 Compose,你可以使用 YAML 文件来配置应用程序的环境,然后用一条命令来启动或停止所有服务。
  1. 删除所有容器
  2. 删除所有不用的网络
  3. 删除所有不用的存储卷
问题
是否可以仅使用一条命令就完成上述3项操作?

请将下面的信息用 YAML 格式表示:

  • 课程名:Docker
  • 总学时:64
  • 课时:周三、周五
  • 适用专业:云计算技术应用
  • 教师信息:
    • 姓名:张三
    • 职称:讲师
作业

用YAML文件格式表示你的简历:

  • 基本信息:姓名、年龄、性别、联系方式(邮箱、电话)。
  • 教育背景:学校名称、专业、毕业年份(可以列出多所学校)。
  • 技能:列出至少 3 项技能(如编程语言、工具使用等)。
  • 个人简介:一段简短的自我描述(使用多行文本格式)。
单词参考

personal_info: 个人信息 name: 姓名 age: 年龄 gender: 性别 contact: 联系方式 email: 邮箱 phone: 电话

education: 教育 school: 学校 major: 专业 graduation_year: 毕业年份 skills: 技能 bio: 个人简介

在之前的实验中,我们运行 WordPress 使用了如下命令:

bash

docker network create mysite-network
docker volume create wordpress-content

docker run \
-d --name wordpress  \
--network mysite-network \
-v wordpress-content:/var/www/html \
-p 80:80 \
wordpress

请将上面的命令转换为 Docker Compose 配置文件,部分内容如下:

yaml

version: '3.3'

services:
  wordpress:
    image: 
    container_name: 
    networks:
    volumes:

networks:

volumes:
技巧
Compose 文件可以帮助我们一次性定义和管理多个容器、网络和存储卷。

请将下面的命令转换为 Compose 配置文件:

bash

docker run -d \
--name wordpress-mysql \
--network mysite-network \
-e MYSQL_ROOT_PASSWORD=sqlpassword \
-e MYSQL_DATABASE=wordpress \
-e MYSQL_USER=wordpress \
-e MYSQL_PASSWORD=wordpress \
mysql:8.3.0

将任务二和任务三的 Compose 文件合并到一个文件中,实现 WordPress 和 MySQL 的协同运行。

示例
可以参考官方文档或前面的 Compose 文件结构进行合并。

执行以下命令可以清除实验中创建的资源:

bash

docker compose down --volumes
警告
默认情况下,compose 不会删除创建的 Volume。需要增加 –volumes 参数才能强制删除。

相关内容