Update MySQL 8.0 to 8.4 LTS, fix Trivy tag count

This commit is contained in:
yeasy
2026-05-02 15:22:58 +00:00
parent 7e3f90b522
commit bf3107b775
9 changed files with 22 additions and 22 deletions
+1 -1
View File
@@ -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 的基本概念公共和私有服务的选择以及镜像的安全管理
+2 -2
View File
@@ -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. 调试时先用前台模式
+3 -3
View File
@@ -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)
+7 -7
View File
@@ -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
```
---
+1 -1
View File
@@ -490,7 +490,7 @@ volumes:
```yaml
services:
my_src:
image: mysql:8.0
image: mysql:8.4
volumes:
- mysql_data:/var/lib/mysql
+3 -3
View File
@@ -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:
+2 -2
View File
@@ -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:
+1 -1
View File
@@ -200,7 +200,7 @@ spec:
spec:
containers:
- name: mysql
image: mysql:8.0
image: mysql:8.4
volumeMounts:
- name: data
mountPath: /var/lib/mysql
+2 -2
View File
@@ -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: