Update nginx, OS, Buildx, etcd and K8s refs

This commit is contained in:
yeasy
2026-04-28 12:22:57 +00:00
parent 62f48c1417
commit 30f0115cb9
14 changed files with 26 additions and 26 deletions
+1 -1
View File
@@ -172,7 +172,7 @@ registry.example.com/myproject/myapp:v1.2.3
## 简写(使用 Docker Hub
nginx:1.25
nginx:1.30
ubuntu:24.04
## 省略标签(默认使用 latest)
+3 -3
View File
@@ -1,6 +1,6 @@
## 2.3 仓库
> **版本说明**本节示例基于 Docker v29.x 和常见镜像版本编写示例中的版本号 `nginx:1.25``mysql:8.0``mysql:5.7` 为演示用途实际使用时请访问 [Docker Hub 官方页面](https://hub.docker.com) 或相应镜像的发布页确认最新可用版本和标签。
> **版本说明**本节示例基于 Docker v29.x 和常见镜像版本编写示例中的版本号 `nginx:1.30``mysql:8.0``mysql:5.7` 为演示用途实际使用时请访问 [Docker Hub 官方页面](https://hub.docker.com) 或相应镜像的发布页确认最新可用版本和标签。
Docker Registry 是镜像分发和管理的核心组件本节将介绍 Registry 的基本概念公共和私有服务的选择以及镜像的安全管理
@@ -73,7 +73,7 @@ registry.example.com/mycompany/myapp:v1.2.3
## Docker Hub 官方镜像(省略 registry 和用户名)
nginx:1.25
nginx:1.30
ubuntu:24.04
## Docker Hub 用户镜像
@@ -217,7 +217,7 @@ $ docker login registry.example.com # 登录其他 Registry
## 拉取镜像
$ docker pull nginx:1.25
$ docker pull nginx:1.30
## 标记镜像(准备推送)
+1 -1
View File
@@ -34,7 +34,7 @@ Starting ──成功──> Healthy ──失败N次──> Unhealthy
#### Web 服务检查
```docker
# 注:nginx 镜像推荐使用具体的版本标签(如 nginx:1.25-alpine
# 注:nginx 镜像推荐使用具体的版本标签(如 nginx:1.30-alpine
FROM nginx
RUN apt-get update && apt-get install -y curl && rm -rf /var/lib/apt/lists/*
+1 -1
View File
@@ -176,5 +176,5 @@ $ docker build --target builder -t username/imagename:tag .
上面例子中我们使用 `COPY --from=0 /go/src/github.com/go/helloworld/app .` 从上一阶段的镜像中复制文件我们也可以复制任意镜像中的文件
```docker
COPY --from=nginx:1.25-alpine /etc/nginx/nginx.conf /nginx.conf
COPY --from=nginx:1.30-alpine /etc/nginx/nginx.conf /nginx.conf
```
@@ -128,8 +128,8 @@ RUN set -x ; cd ${LARAVEL_PATH} \
### 7.18.5 最后一个阶段构建 NGINX 镜像
```docker
# 注:nginx 镜像推荐使用具体的版本标签(如 nginx:1.25-alpine
FROM nginx:1.25-alpine as nginx
# 注:nginx 镜像推荐使用具体的版本标签(如 nginx:1.30-alpine
FROM nginx:1.30-alpine as nginx
ARG LARAVEL_PATH=/app/laravel
@@ -179,7 +179,7 @@ $ docker run -dit --rm --network=laravel -p 8080:80 my/nginx
完整的 `Dockerfile` 文件如下
```docker
# 注:生产环境推荐使用具体的版本标签,如 node:20-alpine、composer:2.x、php:8.3-fpm-alpine、nginx:1.25-alpine
# 注:生产环境推荐使用具体的版本标签,如 node:20-alpine、composer:2.x、php:8.3-fpm-alpine、nginx:1.30-alpine
FROM node:20-alpine as frontend
COPY package.json /app/
@@ -229,7 +229,7 @@ RUN set -x ; cd ${LARAVEL_PATH} \
&& chmod -R 777 storage \
&& php artisan package:discover
FROM nginx:1.25-alpine as nginx
FROM nginx:1.30-alpine as nginx
ARG LARAVEL_PATH=/app/laravel
@@ -47,7 +47,7 @@ RUN set -x ; cd ${LARAVEL_PATH} \
&& chmod -R 777 storage \
&& php artisan package:discover
FROM nginx:1.25-alpine as nginx
FROM nginx:1.30-alpine as nginx
ARG LARAVEL_PATH=/app/laravel
+1 -1
View File
@@ -2,7 +2,7 @@
Docker Buildx 是一个 docker CLI 插件其扩展了 docker 命令支持 [Moby BuildKit](10.1_buildkit.md) 提供的功能提供了与 docker build 相同的用户体验并增加了许多新功能
> Buildx 需要 Docker v19.03+ Docker 19.03 及以上版本在较新版本中已更常用且功能更完整
> Buildx 需要 Docker v23.0+该版本起 BuildKit 成为默认构建引擎推荐使用 Docker v28 及以上版本以获得最完整的 Buildx 功能支持
## 本章内容
+1 -1
View File
@@ -35,7 +35,7 @@
##### 节点状态
节点的状态主要是用来描述处于 `Running` 的节点当前可用的有 `NodeReachable` `NodeReady`以后可能会增加其他状态`NodeReachable` 表示集群可达`NodeReady` 表示 kubelet 返回 Status Ok 并且 HTTP 状态检查健康
节点的状态通过一组条件Conditions来描述主要条件包括 `Ready`kubelet 健康且可以接收 Pod`MemoryPressure`内存不足`DiskPressure`磁盘不足 `PIDPressure`进程数过多其中 `Ready` 条件最为关键值为 `True` 表示节点健康可调度`False` 表示节点异常`Unknown` 表示节点控制器超过一定时间未收到心跳
#### 节点管理
+1 -1
View File
@@ -1,6 +1,6 @@
## 15.1 简介
> **版本说明** 本章内容基于 etcd 3.5 系列版本编写当前最新 v3.5.x请访问 [etcd 官方发布页](https://github.com/etcd-io/etcd/releases) 获取最新版本信息。
> **版本说明** 本章内容基于 etcd 3.5 系列版本编写官方维护最新两个次版本当前为 3.5 3.6请访问 [etcd 官方发布页](https://github.com/etcd-io/etcd/releases) 获取最新版本信息。
如图 15-1 所示etcd 项目使用该标识
+7 -7
View File
@@ -25,7 +25,7 @@ Debian 是一个常用的基础镜像。
```bash
$ docker run -it debian bash
root@668e178d8d69:/# cat /etc/issue
Debian GNU/Linux 12
Debian GNU/Linux 13
```
`Debian` 镜像很适合作为基础镜像构建自定义镜像
@@ -43,18 +43,18 @@ Debian GNU/Linux 12
Ubuntu 是目前最流行的 Linux 发行版之一
下面以 `ubuntu:24.04` 为例演示如何使用该镜像安装一些常用软件
下面以 `ubuntu:26.04` 为例演示如何使用该镜像安装一些常用软件
首先使用 `-ti` 参数启动容器登录 `bash`查看 `ubuntu` 的发行版本号
```bash
$ docker run -ti ubuntu:24.04 /bin/bash
$ docker run -ti ubuntu:26.04 /bin/bash
root@7d93de07bf76:/# cat /etc/os-release
PRETTY_NAME="Ubuntu 24.04 LTS"
PRETTY_NAME="Ubuntu 26.04 LTS"
NAME="Ubuntu"
VERSION_ID="24.04"
VERSION="24.04 LTS (Noble Numbat)"
VERSION_CODENAME=noble
VERSION_ID="26.04"
VERSION="26.04 LTS (Resolute Raccoon)"
VERSION_CODENAME=resolute
ID=ubuntu
ID_LIKE=debian
HOME_URL="https://www.ubuntu.com/"
+1 -1
View File
@@ -50,7 +50,7 @@ latest: Pulling from library/fedora
Digest: sha256:64a02df6aac27d1200c2572fe4b9949f1970d05f74d367ce4af994ba5dc3669e
Status: Downloaded newer image for fedora:latest
[root@196ca341419b /]# cat /etc/redhat-release
Fedora release 39 (Thirty Nine)
Fedora release 43 (Forty Three)
```
### 20.4.3 相关资源
+1 -1
View File
@@ -8,7 +8,7 @@
本章示例中使用的操作系统镜像版本遵循以下原则
- **AlpineDebianUbuntuCentOS** 等操作系统镜像采用大版本或次版本标签 `alpine:3.21``ubuntu:24.04`避免使用 `latest` 标签确保构建的可再现性
- **AlpineDebianUbuntuCentOS** 等操作系统镜像采用大版本或次版本标签 `alpine:3.21``ubuntu:26.04`避免使用 `latest` 标签确保构建的可再现性
- **OS 大版本保留**以便获得最新的安全补丁和修复
- 在生产环境中建议根据实际需求选择合适的版本并定期更新以获得安全修复
+2 -2
View File
@@ -54,9 +54,9 @@ unit_test:
build_image:
stage: build
image: docker:27
image: docker:29
services:
- docker:27-dind
- docker:29-dind
script:
- echo "$CI_REGISTRY_PASSWORD" | docker login -u "$CI_REGISTRY_USER" --password-stdin $CI_REGISTRY
- docker build -t $CI_REGISTRY_IMAGE:$CI_COMMIT_SHA .
+1 -1
View File
@@ -587,7 +587,7 @@ A(要点):
A要点
```text
1. 选择合适的基础镜像
scratch < alpine:3.17 < python:3.14-slim < python:3.14
scratch < alpine:3.21 < python:3.14-slim < python:3.14
2. 多阶段构建
- 构建阶段只保留编译工具