docker
  • docker教程
  • advanced
    • Docker 构建缓存指南
    • Docker分配CPU资源
    • Dockerfile+Maven插件构建SpringBoot镜像(推荐)
    • Dockerfile构建SpringBoot镜像
    • idea配置docker
    • Docker Jenkins进阶配置
    • 基于jenkins容器部署SpringBoot应用构建镜像(基于Dockerfile+Maven插件构建)
    • Maven插件构建SpringBoot镜像(二)
    • 基于Maven插件为SpringBoot应用构建镜像并推送到远程_私人仓库(Docker Hub)
    • Maven插件构建SpringBoot镜像(一)
    • Docker MongoDB进阶配置
    • Docker 多阶段构建指南
    • Docker MySql进阶配置
    • Docker network进阶配置
    • Docker Nginx进阶配置
    • Docker空(none)镜像处理
    • Docker pip install --no-cache-dir
    • Docker redis进阶配置
  • concepts
    • docker、docker engine和docker desktop区别
    • 架构
    • 什么是容器?
    • 什么是镜像?
    • 什么是Docker?
    • 什么是仓库?
  • docker-compose
    • Docker Compose 锚点的用法
    • docker-compose 编排多服务
    • docker-compose 常用命令
    • docker-compose 部署jenkins
    • docker-compose安装mySql
    • docker-compose网络配置
    • docker-compose安装nginx
    • docker-compose安装redis
    • docker Compose 示例1
  • docker-hub
    • Docker Hub账号服务说明
  • install
    • CentOS Docker 安装
    • Debian Docker 安装
    • Docker 安装 Apache
    • Docker 安装 CentOS
    • Docker 安装 Elasticsearch
    • Docker 安装 GitLab
    • Docker 安装 Jenkins
    • Docker 安装 MongoDB
    • Docker 安装 MySQL
    • Docker 安装 Nginx
    • Docker 安装 Node.js
    • Docker 安装 PHP
    • Docker 安装 Portainer
    • Docker Python 官方镜像使用说明(TAG说明)
    • Docker 安装 Python
    • Docker 安装 Redis
    • Docker 安装 Tomcat
    • Docker 安装 Ubuntu
    • Docker 安装 Wordpress
    • Docker 国内镜像加速
    • MacOS Docker 安装
    • Ubuntu Docker 安装
    • Windows Docker 安装
  • manual
    • Docker attach 命令
    • Docker build 命令
    • Docker 清理命令
    • Docker命令大全
    • Docker commit 命令
    • docker-compose-run-command
    • Docker cp 命令
    • Docker create 命令
    • Docker diff 命令
    • Docker rm 命令
    • Docker exec 命令
    • Docker export 命令
    • Docker history 命令
    • Docker images 命令
    • Docker import 命令
    • Docker info 命令
    • Docker inspect 命令
    • Docker kill 命令
    • Docker load 命令
    • Docker login/logout 命令
    • Docker logs 命令
    • Docker network 命令
    • Docker pause/unpause 命令
    • Docker port 命令
    • Docker 常见问题
    • Docker ps 命令
    • Docker pull 命令
    • Docker push 命令
    • Docker rename 命令
    • docker-resources
    • Docker rm 命令
    • Docker rm 命令
    • Docker run 命令
    • Docker save 命令
    • Docker search 命令
    • Docker start/stop/restart 命令
    • Docker stats 命令
    • Docker tag 命令
    • Docker top 命令
    • Docker version 命令
    • Docker version 命令
    • Docker wait 命令
    • diff
      • Docker Compose 和 docker-compose 区别
      • Docker import、export 与 save、load 命令 区别
  • usage
    • Docker docker-compose 使用
    • Docker 容器连接
    • Docker 容器使用
    • Docker Dockerfile Ptyhon实战配置-1
    • Docker Dockerfile Ptyhon实战配置之多阶段构建-2
    • Docker Dockerfile
    • Docker 镜像使用
    • Docker Machine
    • Docker 仓库管理
    • Swarm集群管理
  • assets
    • mysql
      • my.cnf
Powered by GitBook
On this page
  • 本文将以python的3.12版本,详细讲解官方 Python 镜像 的TAGS含义,
  • 🧭 一张图先看懂(最常见 Tag)
  • 🧱 Python 官方镜像主要的 Tag 类型
  • 📊 所有常见 Tag 类型汇总与对比
  • 🧠 推荐选型指南
  • 🔥 实战小贴士
  • 最常用组合(建议)
  • ⚠️ 选择时注意:

Was this helpful?

  1. install

Docker Python 官方镜像使用说明(TAG说明)

本文将以python的3.12版本,详细讲解官方 Python 镜像 的TAGS含义,

🧭 一张图先看懂(最常见 Tag)

python:3.12.9-slim-bookworm
└──────┬──┘ └────┬──┘ └──────┬─────┘
     │       │        └ Debian 版本(基础系统)
     │       └ 变体(镜像类型)
     └ Python 主版本(+ 小版本)

🧱 Python 官方镜像主要的 Tag 类型

Tag 示例
说明

python:3.12

标准版,基于 Debian,体积较大,功能齐全

python:3.12-slim

精简版 Debian(体积更小)

python:3.12-alpine

极小的 Alpine Linux(适合镜像瘦身)

python:3.12-windowsservercore

基于 Windows Server Core 的镜像

python:3.12-bullseye / bookworm

明确基于 Debian 某个发行版本

python:3.12-slim-bullseye / slim-bookworm

slim 精简版 + 指定 Debian 基础版本

python:3.12-rc

Release candidate(候选版)

python:3.12.10

精确到 Patch 版本的完整标签(推荐用于生产)

📊 所有常见 Tag 类型汇总与对比

Tag 类型
示例
基础系统
体积
用途说明
特点
是否适用于科学计算

python:<version>

python:3.12

Debian full

🟥 大(~900MB)

默认开发环境

包含很多工具,最完整

✅ 兼容性强

python:<version>-slim

python:3.12-slim

Debian slim

🟧 中等(~100MB)

常规部署

去掉调试包、文档

✅ 适合大部分包

python:<version>-alpine

python:3.12-alpine

Alpine Linux

🟩 极小(~5-20MB)

极致轻量化

使用 musl,兼容性差

❌ 容易踩坑,需要手动安装

python:<version>-windowsservercore

python:3.12-windowsservercore

Windows Server Core

🟦 超大(GB)

Windows-only

特殊场景

⚠️ 限于 Windows 平台

python:<version>-bullseye

python:3.12-bullseye

Debian Bullseye

🟥 大

Debian 11 系

稳定,但旧

✅

python:<version>-bookworm

python:3.12-bookworm

Debian Bookworm

🟥 大

Debian 12 系

最新 Debian 系

✅

python:<version>-slim-bullseye

python:3.12-slim-bullseye

Debian slim

🟧 中

更兼容性旧系统

✅

python:<version>-slim-bookworm

python:3.12-slim-bookworm

Debian slim

🟧 中

推荐 ✅

最推荐的生产基础

✅

python:<version>-rc

python:3.13-rc

Debian full

🟥 大

下一个版本预发布

不稳定、测试用

⚠️ 测试用

python:<version>-slim-arm64

python:3.12-slim-arm64

Debian slim

🟧

适配 M1/M2 芯片

架构适配

🟢兼容性好,依赖齐全

python:<version>-alpine3.18

python:3.12-alpine3.18

Alpine 3.18

🟩 极小

明确指定 alpine 版本

对 musl、依赖有要求时用

⚠️ 谨慎:需手动安装科学计算依赖

🧠 推荐选型指南

场景
推荐镜像
说明

大多数 Web 项目 / API 服务

python:3.12-slim-bookworm ✅

体积适中、兼容性强,是部署常用选择

包含科学计算(numpy/pandas)

python:3.12-slim 或 python:3.12 ✅

避免使用 alpine,因缺依赖编译复杂

要尽量减小镜像体积(熟悉 Linux 构建)

python:3.12-alpine ⚠️

非常小,但安装依赖容易踩坑,需经验丰富

Docker build 阶段缓存重用,兼容最好老系统

python:3.12-bullseye 或 python:3.12-slim-bullseye ✅

bullseye 兼容性最佳(如国内云主机)

Windows-only 应用(如使用 Win32API)

python:3.12-windowsservercore ⚠️

镜像大,适用于特定场景

多阶段构建中的 build 镜像

python:3.12(功能全) ✅

用于编译 C 扩展 / 安装复杂依赖

多阶段构建中的 runtime 镜像

python:3.12-slim 或 python:3.12-alpine ✅/⚠️

视需求选更轻镜像用于运行

CI/CD 中快速执行 Python 脚本 / 检查代码

python:3.12-alpine ⚠️

启动快、拉取快,但注意缺依赖

想尝试 Python 的下个版本(新语法/特性)

python:3.13-rc 🧪

仅用于测试,不建议生产使用

搭配 AI 框架(如 TensorFlow、PyTorch)部署

基于 nvidia/cuda 的 Python 镜像 ✅

Python 官方镜像不含 GPU 支持

使用国内镜像源部署时优化基础镜像

python:3.12-slim-bookworm ✅

bookworm 源在国内访问比 alpine 好

对稳定性要求极高,版本固定部署

python:3.12.10-slim-bookworm ✅

推荐锁定 patch 版本,避免镜像变化

🔥 实战小贴士

最常用组合(建议)

FROM python:3.12-slim-bookworm
或
FROM python:3.12-slim-bullseye # 兼容老系统

如果打包的是 Flask、FastAPI、Scrapy 等项目,建议避开 alpine 除非你非常熟悉 Linux 编译。

⚠️ 选择时注意:

  • Alpine 兼容性差,尤其是涉及 C 编译的库,如 numpy、uvloop、psycopg2

  • slim 是推荐默认生产镜像:体积和功能的良好平衡

  • 不要在生产中用 full 版除非你真的需要所有工具

PreviousDocker 安装 PortainerNextDocker 安装 Python

Last updated 20 days ago

Was this helpful?