Fix mongosh, DCA price, compose healthcheck and cleanup

This commit is contained in:
yeasy
2026-04-27 14:17:57 +00:00
parent 233b0ca96f
commit 109112d146
7 changed files with 18 additions and 12 deletions
+5 -5
View File
@@ -53,7 +53,7 @@ docker network inspect my-overlay-net
docker service create --name web \ docker service create --name web \
--network my-overlay-net \ --network my-overlay-net \
--replicas 3 \ --replicas 3 \
nginx # 确保与环境兼容的 Nginx 版本 nginx
# 单机环境下也可以让普通容器加入 attachable overlay 网络 # 单机环境下也可以让普通容器加入 attachable overlay 网络
docker run -d --name container1 --network my-overlay-net busybox sleep 1d docker run -d --name container1 --network my-overlay-net busybox sleep 1d
@@ -111,14 +111,14 @@ docker run -d \
--dns 8.8.8.8 \ --dns 8.8.8.8 \
--dns 1.1.1.1 \ --dns 1.1.1.1 \
--dns-search example.com \ --dns-search example.com \
nginx # 确保与环境兼容的 Nginx 版本 nginx
# DNS 选项 # DNS 选项
docker run -d \ docker run -d \
--dns-option ndots:2 \ --dns-option ndots:2 \
--dns-option timeout:1 \ --dns-option timeout:1 \
--dns-option attempts:3 \ --dns-option attempts:3 \
nginx # 确保与环境兼容的 Nginx 版本 nginx
# 查看容器 DNS 配置 # 查看容器 DNS 配置
docker exec <container_id> cat /etc/resolv.conf docker exec <container_id> cat /etc/resolv.conf
@@ -171,8 +171,8 @@ networks:
docker network create mynet docker network create mynet
# 运行服务 # 运行服务
docker run -d --name web --network mynet nginx # 确保与环境兼容的 Nginx 版本 docker run -d --name web --network mynet nginx
docker run -d --name db --network mynet postgres # 确保与环境兼容的 PostgreSQL 版本 docker run -d --name db --network mynet postgres
# 在其他容器中通过服务名访问 # 在其他容器中通过服务名访问
docker run -it --network mynet busybox sh docker run -it --network mynet busybox sh
+1 -1
View File
@@ -26,7 +26,7 @@ Docker Compose 提供了丰富的命令来管理项目和容器。本节将详
**配置验证** **配置验证**
- `docker compose config`验证 docker-compose.yml 格式是否正确 - `docker compose config`验证 compose.yaml ( docker-compose.yml) 格式是否正确
### 11.4.1 命令对象与格式 ### 11.4.1 命令对象与格式
@@ -5,6 +5,11 @@ services:
image: postgres image: postgres
environment: environment:
POSTGRES_PASSWORD: 'postgres' POSTGRES_PASSWORD: 'postgres'
healthcheck:
test: ["CMD-SHELL", "pg_isready -U postgres"]
interval: 5s
timeout: 5s
retries: 5
web: web:
build: . build: .
@@ -13,3 +18,6 @@ services:
- .:/code - .:/code
ports: ports:
- "8000:8000" - "8000:8000"
depends_on:
db:
condition: service_healthy
+1 -1
View File
@@ -41,7 +41,7 @@ Kubernetes 作为一个容器编排系统,为了屏蔽底层不同容器运行
- 早期版本中Kubernetes 默认使用 docker 作为运行时通过一个名为 `dockershim` 的桥接组件对接 DockerDocker 再对接 containerd - 早期版本中Kubernetes 默认使用 docker 作为运行时通过一个名为 `dockershim` 的桥接组件对接 DockerDocker 再对接 containerd
- 随着 containerd 原生支持了 CRI 插件Kubernetes 开始直接与 containerd 通信去掉了 `dockershim` `dockerd` 的中间层这就是为什么从 Kubernetes 1.24+ 开始弃用 Docker引发了广泛关注实际上 Kubernetes 只是弃用 `dockershim`底层依然在使用从 Docker 基因中诞生的 containerd参见 [Kubernetes 官方文档](https://kubernetes.io/docs/setup/production-environment/container-runtimes/#containerd)。 - 随着 containerd 原生支持了 CRI 插件Kubernetes 开始直接与 containerd 通信去掉了 `dockershim` `dockerd` 的中间层这就是为什么从 Kubernetes 1.24+ 开始弃用 Docker引发了广泛关注实际上 Kubernetes 只是弃用 `dockershim`底层依然在使用从 Docker 基因中诞生的 containerd参见 [Kubernetes 官方文档](https://kubernetes.io/docs/setup/production-environment/container-runtimes/#containerd)。
- containerd 2.0+ 移除了已弃用的 CRI v1alpha2 接口仅保留 CRI v1Kubernetes 1.26+ 仅支持 CRI v1如果集群中仍有依赖 CRI v1alpha2 的组件升级 containerd 2.x 前需先完成迁移containerd 2.3+ 2.x 系列首个 LTS 版本支持从 1.7 LTS 直接升级生产环境推荐使用详见 [containerd 发布说明](https://github.com/containerd/containerd/releases)。 - containerd 2.0+ 移除了已弃用的 CRI v1alpha2 接口仅保留 CRI v1Kubernetes 1.26+ 仅支持 CRI v1containerd 2.3+ 2.x 系列首个 LTS 版本支持从 1.7 LTS 直接升级生产环境推荐使用详见 [containerd 发布说明](https://github.com/containerd/containerd/releases)。
### 17.6.3 为什么直接使用 containerd ### 17.6.3 为什么直接使用 containerd
+1 -1
View File
@@ -434,7 +434,7 @@ Kubernetes 进阶 (Week 24-36)
- 题目数55 - 题目数55
- 时间限制90 分钟 - 时间限制90 分钟
- 及格分数73% 41 道题 - 及格分数73% 41 道题
- 费用$165 USD - 费用$199 USD
- 有效期3 - 有效期3
考试内容比例 考试内容比例
+2 -2
View File
@@ -25,13 +25,13 @@ $ docker run --name some-mongo -d --network my-mongo-net mongo
```bash ```bash
$ docker run --name some-app -d --network my-mongo-net application-that-uses-mongo $ docker run --name some-app -d --network my-mongo-net application-that-uses-mongo
``` ```
或者通过 `mongo` 或者通过 `mongosh`MongoDB 6.0+ 已弃用 `mongo`请使用 `mongosh`
```bash ```bash
$ docker run -it --rm \ $ docker run -it --rm \
--network my-mongo-net \ --network my-mongo-net \
mongo \ mongo \
sh -c 'exec mongo "some-mongo:27017/test"' sh -c 'exec mongosh "mongodb://some-mongo:27017/test"'
``` ```
### Dockerfile ### Dockerfile
-2
View File
@@ -28,8 +28,6 @@ $ docker run -it --rm --name my-running-app my-nodejs-app
```bash ```bash
$ docker run -it --rm \ $ docker run -it --rm \
--name my-running-script \ --name my-running-script \
# -v "$ ":/usr/src/myapp \
--mount type=bind,src="$(pwd)",target=/usr/src/myapp \ --mount type=bind,src="$(pwd)",target=/usr/src/myapp \
-w /usr/src/myapp \ -w /usr/src/myapp \
node:20-alpine \ node:20-alpine \