From bf3107b775ce6ca0ba6638c80a1924c8c959ccdd Mon Sep 17 00:00:00 2001 From: yeasy Date: Sat, 2 May 2026 15:22:58 +0000 Subject: [PATCH] Update MySQL 8.0 to 8.4 LTS, fix Trivy tag count --- 02_basic_concept/2.3_repository.md | 2 +- 05_container/5.2_daemon.md | 4 ++-- 05_container/README.md | 6 +++--- 07_dockerfile/7.8_volume.md | 14 +++++++------- 11_compose/11.5_compose_file.md | 2 +- 11_compose/11.8_wordpress.md | 6 +++--- 11_compose/demo/wordpress/docker-compose.yml | 4 ++-- 13_kubernetes_concepts/13.2_concepts.md | 2 +- 18_security/18.6_image_security.md | 4 ++-- 9 files changed, 22 insertions(+), 22 deletions(-) diff --git a/02_basic_concept/2.3_repository.md b/02_basic_concept/2.3_repository.md index b7a2d1d..d33062a 100644 --- a/02_basic_concept/2.3_repository.md +++ b/02_basic_concept/2.3_repository.md @@ -1,6 +1,6 @@ ## 2.3 仓库 -> **版本说明**:本节示例基于 Docker v29.x 和常见镜像版本编写。示例中的版本号(如 `nginx:1.30`、`mysql:8.0`、`mysql:5.7` 等)为演示用途。实际使用时请访问 [Docker Hub 官方页面](https://hub.docker.com) 或相应镜像的发布页确认最新可用版本和标签。 +> **版本说明**:本节示例基于 Docker v29.x 和常见镜像版本编写。示例中的版本号(如 `nginx:1.30`、`mysql:8.4`、`mysql:5.7` 等)为演示用途。实际使用时请访问 [Docker Hub 官方页面](https://hub.docker.com) 或相应镜像的发布页确认最新可用版本和标签。 Docker Registry 是镜像分发和管理的核心组件。本节将介绍 Registry 的基本概念、公共和私有服务的选择,以及镜像的安全管理。 diff --git a/05_container/5.2_daemon.md b/05_container/5.2_daemon.md index b1cb005..e6156e0 100644 --- a/05_container/5.2_daemon.md +++ b/05_container/5.2_daemon.md @@ -126,14 +126,14 @@ $ docker run -d -p 80:80 nginx:latest ## 数据库 -$ docker run -d -p 3306:3306 mysql:8.0 +$ docker run -d -p 3306:3306 mysql:8.4 ## 缓存服务 $ docker run -d -p 6379:6379 redis:latest ``` -> **版本说明**:示例使用常见的标签如 `latest` 或稳定大版本号如 `mysql:8.0`。具体版本可根据需求调整,生产环境建议明确指定版本号(如 `mysql:8.0.35`)而非使用 `latest`。 +> **版本说明**:示例使用常见的标签如 `latest` 或稳定大版本号如 `mysql:8.4`。具体版本可根据需求调整,生产环境建议明确指定版本号(如 `mysql:8.4.4`)而非使用 `latest`。 #### 2. 调试时先用前台模式 diff --git a/05_container/README.md b/05_container/README.md index 96b6451..9abaf53 100644 --- a/05_container/README.md +++ b/05_container/README.md @@ -10,11 +10,11 @@ 本章示例涉及多个 Docker 镜像,遵循以下版本号最佳实践: -- **官方镜像**(如 `ubuntu`、`nginx`、`mysql`):使用具体大版本号(如 `ubuntu:24.04`、`mysql:8.0`)而非 `latest`,确保示例的可重复性 +- **官方镜像**(如 `ubuntu`、`nginx`、`mysql`):使用具体大版本号(如 `ubuntu:24.04`、`mysql:8.4`)而非 `latest`,确保示例的可重复性 - **镜像标签约定**: - `latest` 或 `v1.0.0` 等:带标签的自定义镜像,示例中指定具体版本 - - `24.04`、`8.0`:官方镜像的稳定版本分支 - - 生产环境建议:指定精确版本号(如 `nginx:1.24.0`、`mysql:8.0.35`)而非仅大版本号 + - `24.04`、`8.4`:官方镜像的稳定版本分支 + - 生产环境建议:指定精确版本号(如 `nginx:1.24.0`、`mysql:8.4.4`)而非仅大版本号 * [启动容器](5.1_run.md) * [守护态运行](5.2_daemon.md) diff --git a/07_dockerfile/7.8_volume.md b/07_dockerfile/7.8_volume.md index 23ff096..0c96c5f 100644 --- a/07_dockerfile/7.8_volume.md +++ b/07_dockerfile/7.8_volume.md @@ -44,7 +44,7 @@ flowchart LR #### 定义单个卷 ```docker -FROM mysql:8.0 +FROM mysql:8.4 VOLUME /var/lib/mysql ``` @@ -63,7 +63,7 @@ VOLUME ["/data", "/logs", "/config"] 如果运行时未指定挂载,Docker 会自动创建匿名卷: ```bash -$ docker run mysql:8.0 +$ docker run mysql:8.4 $ docker volume ls DRIVER VOLUME NAME local a1b2c3d4e5f6... # 自动创建的匿名卷 @@ -74,7 +74,7 @@ local a1b2c3d4e5f6... # 自动创建的匿名卷 ```bash ## 使用命名卷替代匿名卷 -$ docker run -v mysql_data:/var/lib/mysql mysql:8.0 +$ docker run -v mysql_data:/var/lib/mysql mysql:8.4 ``` #### 3. 可被 Bind Mount 覆盖 @@ -82,7 +82,7 @@ $ docker run -v mysql_data:/var/lib/mysql mysql:8.0 ```bash ## 使用宿主机目录替代 -$ docker run -v /my/data:/var/lib/mysql mysql:8.0 +$ docker run -v /my/data:/var/lib/mysql mysql:8.4 ``` --- @@ -145,7 +145,7 @@ VOLUME /app/uploads ```bash ## 查看镜像定义的 VOLUME -$ docker inspect mysql:8.0 --format '{{json .Config.Volumes}}' | jq +$ docker inspect mysql:8.4 --format '{{json .Config.Volumes}}' | jq { "/var/lib/mysql": {} } @@ -196,7 +196,7 @@ volumes: ```bash ## 使用 --rm 运行的容器,匿名卷会在容器删除时一起删除 -$ docker run --rm mysql:8.0 +$ docker run --rm mysql:8.4 ## 容器停止后,数据丢失! @@ -205,7 +205,7 @@ $ docker run --rm mysql:8.0 **解决**:始终使用命名卷 ```bash -$ docker run -v mysql_data:/var/lib/mysql mysql:8.0 +$ docker run -v mysql_data:/var/lib/mysql mysql:8.4 ``` --- diff --git a/11_compose/11.5_compose_file.md b/11_compose/11.5_compose_file.md index 1076fc9..fc5bcd1 100644 --- a/11_compose/11.5_compose_file.md +++ b/11_compose/11.5_compose_file.md @@ -490,7 +490,7 @@ volumes: ```yaml services: my_src: - image: mysql:8.0 + image: mysql:8.4 volumes: - mysql_data:/var/lib/mysql diff --git a/11_compose/11.8_wordpress.md b/11_compose/11.8_wordpress.md index 91f8e8c..4b51432 100644 --- a/11_compose/11.8_wordpress.md +++ b/11_compose/11.8_wordpress.md @@ -28,13 +28,13 @@ services: # 数据库服务 db: - image: mysql:8.0 + image: mysql:8.4 container_name: wordpress_db restart: always command: - # 使用原生密码认证(旧版 WP 兼容性) + # 启用原生密码认证(MySQL 8.4 默认禁用,旧版 WP 兼容性需要) - - --default-authentication-plugin=mysql_native_password + - --mysql-native-password=ON - --character-set-server=utf8mb4 - --collation-server=utf8mb4_unicode_ci environment: diff --git a/11_compose/demo/wordpress/docker-compose.yml b/11_compose/demo/wordpress/docker-compose.yml index fbe53e6..c3e8a81 100644 --- a/11_compose/demo/wordpress/docker-compose.yml +++ b/11_compose/demo/wordpress/docker-compose.yml @@ -2,9 +2,9 @@ services: db: - image: mysql:8.0 + image: mysql:8.4 command: - - --default_authentication_plugin=mysql_native_password + - --mysql-native-password=ON - --character-set-server=utf8mb4 - --collation-server=utf8mb4_unicode_ci volumes: diff --git a/13_kubernetes_concepts/13.2_concepts.md b/13_kubernetes_concepts/13.2_concepts.md index 7082fdf..a5218cb 100644 --- a/13_kubernetes_concepts/13.2_concepts.md +++ b/13_kubernetes_concepts/13.2_concepts.md @@ -200,7 +200,7 @@ spec: spec: containers: - name: mysql - image: mysql:8.0 + image: mysql:8.4 volumeMounts: - name: data mountPath: /var/lib/mysql diff --git a/18_security/18.6_image_security.md b/18_security/18.6_image_security.md index 16cacb3..5e43958 100644 --- a/18_security/18.6_image_security.md +++ b/18_security/18.6_image_security.md @@ -434,8 +434,8 @@ jobs: tags: ${{ env.REGISTRY }}/${{ env.IMAGE_NAME }}:latest - name: Run Trivy vulnerability scan - # 安全提醒:2026 年 3 月 Trivy GitHub Actions 遭受供应链攻击, - # 75 个版本标签被劫持。务必使用不可变的 commit SHA 引用,而非可变标签。 + # 安全提醒:2026 年 3 月 19 日 Trivy GitHub Actions 遭受供应链攻击, + # 76 个版本标签被劫持。务必使用不可变的 commit SHA 引用,而非可变标签。 # 使用前请到 https://github.com/aquasecurity/trivy-action/releases 核实 SHA 对应正确版本。 uses: aquasecurity/trivy-action@57a97c7e7821a5776cebc9bb87c984fa69cba8f1 # v0.35.0 with: