我需要在docker里面安装playwright。这是我的dockerfile。
FROM python:3.9
EXPOSE 8000
WORKDIR /fastanalytics
COPY /requirements.txt /fastanalytics/requirements.txt
RUN pip install --no-cache-dir --upgrade -r /fastanalytics/requirements.txt
RUN playwright install
RUN playwright install-deps
RUN apt-get update && apt-get upgrade -y
但是当我安装时,我得到了下面的错误。我试图安装错误消息中的所有内容,但它没有帮助。
E: Package 'ttf-ubuntu-font-family' has no installation candidate
E: Unable to locate package libenchant1c2a
E: Unable to locate package libicu66
E: Package 'libjpeg-turbo8' has no installation candidate
4条答案
按热度按时间vmdwslir1#
微软为Playwright发布了一个python docker镜像
Dockerfile
查看Playwright - Docker docs以获取最新的剧作家版本。
uidvcgyl2#
根据他们的文档(https://playwright.dev/python/docs/cli#install-system-dependencies),看起来他们只正式支持Ubuntu系统,而
python:3.9
基于Debian。尝试使用Ubuntu作为您的基础映像并在其上安装python:bvhaajcl3#
RUN apt-get update && playwright install-deps
虽然我没有使用过playwright,但这似乎是Docker的问题。Playwright似乎使用
apt-get
来安装依赖项。在这种情况下,您需要确保apt-get update
在playwright install-deps
之前运行。虽然您可以使用两个单独的RUN
语句来实现这一点,但由于Docker的缓存功能,apt-get update
可能无法运行,因此不建议这样做。roejwanj4#
有一个修复这个问题,为了让这个正常工作,你只需要在安装过程中将实际的 chrome 二进制文件安装到一个特定的目录,然后将该目录指定为环境变量。
如果它出错,尝试抛出一个
在它之前