自用的镜像模板和宿主机安装脚本。镜像建议推到自己的仓库再分发:Harbor、GitHub Packages、AWS ECR 或 Artifactory。
| 目录 | 基础镜像 | 用途 |
|---|---|---|
| ubuntu | ubuntu:24.04 |
调试用基础镜像,--build-arg INSTALL_PYTHON=true 加装 Python |
| python | python:3.12-slim |
最小 Python 应用,非 root 运行 |
| nginx | nginx:1.30-alpine |
前端构建产物的静态站点 |
| healthcheck | nginx:1.30-alpine |
HEALTHCHECK 写法 |
| mongo | mongo:7.0 |
Compose 示例,口令从 .env 读 |
官方镜像的常见标签:
| 标签 | 底层/版本 | 体积(相对) | 预装内容(相对) | 兼容性/生态 | 典型适用场景 |
|---|---|---|---|---|---|
slim |
通常 Debian 系(未明确代号时随上游) | 小 | 少(删文档/部分工具等) | Debian 生态,兼容性高 | 想比完整版小,但不想换生态 |
slim-bookworm |
Debian 12 (bookworm) | 小 | 少 | Debian bookworm 生态,稳定可重复 | 生产常用:小 + 兼容稳 |
alpine |
Alpine Linux(musl + apk) | 最小 | 最少 | 与 glibc 相关预编译依赖可能不兼容 | 依赖少、追求极小、确认 musl 兼容 |
trixie |
Debian 13 (trixie) | 大 | 多 | Debian trixie 生态 | 需要更多开箱即用工具/更省装包 |
slim-trixie |
Debian 13 (trixie) | 小 | 少 | Debian trixie 生态(与 trixie 同生态) |
生产镜像想更小、依赖可控 |
docker build -t python-app:3.12 python/
docker run --rm python-app:3.12导出和导入:
docker save -o images.tar ubuntu:24.04 nginx:1.30-alpine
docker load < images.tar| 脚本 | 作用 |
|---|---|
| install_docker.sh | 安装 Docker CE 和 Compose 插件。支持 Ubuntu 22.04/24.04、Debian 11/12、CentOS Stream 9、RHEL 8/9 |
| setup_bbr_docker.sh | 打开 TCP BBR,再调用上面的安装脚本。仅 Ubuntu 22.04/24.04 |
| setup_gost.sh | 用 Docker 跑 GOST HTTP/2 代理,并管理证书 |
sudo bash install_docker.sh
sudo bash setup_bbr_docker.sh
sudo bash setup_gost.sh- 一个
RUN里做完apt-get update、安装和清理,避免把 apt 缓存留在中间层。 - 基础镜像写明版本,不使用已经停止维护的版本。
- 能用
CMD就不用ENTRYPOINT覆盖官方入口脚本。 - 口令放在
.env或挂载的密钥文件里,不写进 Dockerfile、compose 文件和docker run参数。