#!/bin/sh set -e # ============================================================ # Python 开发环境安装脚本 # 通过 apt 安装 Python 3 + pip + venv + 常用开发工具 # 依赖: apt-get, wget # 全局变量: 无 # ============================================================ echo ">>> Installing Python development environment ..." # 安装 Python 3 及开发工具 apt-get update -qq && apt-get install -y -qq --no-install-recommends \ python3 \ python3-pip \ python3-venv \ python3-dev \ python3-full \ build-essential \ libssl-dev \ libffi-dev \ && rm -rf /var/lib/apt/lists/* # Docker 镜像内移除 PEP 668 外部管理限制(系统级环境可控) PYTHON_VERSION=$(python3 -c 'import sys; print(f"{sys.version_info.major}.{sys.version_info.minor}")') EXTERNALLY_MANAGED="/usr/lib/python${PYTHON_VERSION}/EXTERNALLY-MANAGED" if [ -f "$EXTERNALLY_MANAGED" ]; then rm -f "$EXTERNALLY_MANAGED" fi # 创建 python3 -> python 软链接(如果不存在) if [ ! -f /usr/local/bin/python ]; then ln -s /usr/bin/python3 /usr/local/bin/python fi # 升级 pip 到最新 python3 -m pip install --no-cache-dir --upgrade --ignore-installed pip setuptools # 安装 uv (Python 包管理器,由 Astral 开发) echo " Installing uv ..." curl -LsSf https://astral.sh/uv/install.sh | sh # 写入 profile.d 环境变量 cat > /etc/profile.d/python.sh << 'PROFILEEOF' # Python 开发环境 export PIP_REQUIRE_VIRTUALENV=false PROFILEEOF chmod +x /etc/profile.d/python.sh # 将 uv 加入 PATH(curl 安装器默认放到 ~/.cargo/bin) export PATH="${HOME}/.cargo/bin:${PATH}" echo ">>> Python environment installed successfully." echo " $(python3 --version)" echo " $(pip3 --version)" echo " $(uv --version)"