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

Dockerfile中执行playwright install-deps失败问题求助

问题原因

你的问题出在python:3.9-slim基础镜像的更新——现在它默认使用Debian Bookworm(12版本),而Playwright的install-deps命令仍在尝试安装针对旧版Debian/Ubuntu的依赖包,这些包在Bookworm里要么改名、要么被移除,导致安装失败。


解决方案

方案1:锁定基础镜像到Debian Bullseye版本(推荐,最快修复)

直接使用之前的Debian版本(Bullseye),和你之前正常运行的环境完全一致:
修改Dockerfile第一行:

FROM python:3.9-slim-bullseye

其余内容不变,重新执行docker-compose build即可。

方案2:改用Playwright官方Docker镜像(最稳定)

微软提供了预装好Playwright及所有依赖的官方镜像,完全规避依赖安装问题:
修改Dockerfile为:

FROM mcr.microsoft.com/playwright/python:v1.40.0-python3.9

COPY ../../requirements/dev.txt ./
RUN pip install -r dev.txt

ENV PYTHONPATH "${PYTHONPATH}:/app/"
WORKDIR /code/src

EXPOSE 8000

COPY ./src /app

CMD ["uvicorn", "main:app", "--host", "0.0.0.0", "--port", "8000", "--reload"]

注:可根据需求选择对应Playwright版本的镜像,建议锁定版本避免后续更新引入新问题

方案3:手动替换Bookworm兼容的依赖包(适合必须用Bookworm的场景)

如果一定要用Debian Bookworm,可手动安装替代依赖包,替换playwright install-deps步骤:
修改Dockerfile中的依赖安装部分:

RUN python3 -m ensurepip
RUN pip install -r dev.txt
RUN playwright install
# 手动安装Bookworm兼容的依赖,替代playwright install-deps
RUN apt-get update && apt-get install -y --no-install-recommends \
    fonts-unifont \
    libjpeg-turbo6 \
    libx264-163 \
    libenchant-2-2 \
    libicu72 \
    libvpx7 \
    libwebp7 \
    xfonts-cyrillic

注:此方法需跟踪依赖版本变化,后续Playwright更新可能需要同步调整,稳定性不如前两个方案

内容的提问来源于stack exchange,提问作者Daniel Avigdor

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.19 02:07:02