You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Docker构建Ubuntu镜像时pip3 install flask报错,寻求解决方法

解决Docker构建时pip3 install flask的AttributeError: module 'os' has no attribute 'PathLike'错误

问题原因

Ubuntu Xenial(16.04)自带的Python3版本是3.5.x,而os.PathLike是Python3.6才引入的特性。Flask 2.0及以上版本要求Python3.6+,直接安装最新Flask会因为Python版本不兼容触发这个错误。

解决方案

方案1:安装兼容Python3.5的Flask版本

修改Dockerfile中的安装命令,指定Flask版本低于2.0:

RUN pip3 install flask<2.0

这个方案最简单,不需要改动Python环境,适合快速解决问题。

方案2:在Ubuntu Xenial中升级Python到3.6+

如果需要使用新版Flask,可以在Dockerfile中添加步骤升级Python:

FROM ubuntu:xenial

# 更新源并安装依赖
RUN apt-get update && apt-get install -y --no-install-recommends \
    software-properties-common \
    && rm -rf /var/lib/apt/lists/*

# 添加Python PPA源
RUN add-apt-repository ppa:deadsnakes/ppa

# 安装Python3.6及pip
RUN apt-get update && apt-get install -y --no-install-recommends \
    python3.6 \
    python3.6-dev \
    && rm -rf /var/lib/apt/lists/*

# 设置Python3.6为默认python3
RUN update-alternatives --install /usr/bin/python3 python3 /usr/bin/python3.6 1

# 升级pip到最新兼容版本
RUN python3 -m pip install --upgrade pip

# 安装Flask
RUN pip3 install flask

方案3:更换更新的Ubuntu基础镜像

直接改用自带Python3.6+的Ubuntu版本,比如Ubuntu Bionic(18.04)或Jammy(22.04):

# 替换为更高版本的Ubuntu镜像
FROM ubuntu:bionic

# 安装python3和pip3
RUN apt-get update && apt-get install -y --no-install-recommends \
    python3 \
    python3-pip \
    && rm -rf /var/lib/apt/lists/*

# 安装Flask
RUN pip3 install flask

这个方案最省心,后续维护也更简单,推荐长期使用。

内容的提问来源于stack exchange,提问作者Rohit-Udamale

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.30 02:04:51