在 docker 中运行 playwright 时缺少依赖项

Posted

技术标签:

【中文标题】在 docker 中运行 playwright 时缺少依赖项【英文标题】:missing dependencies when running playwright in docker 【发布时间】:2021-04-24 09:24:41 【问题描述】:

我尝试在 docker 中运行 playwright 但收到此错误:

browserType.launch: Host system is missing dependencies!

Missing libraries are:
  libvpx.so.6
  libicui18n.so.66
  libicuuc.so.66
  libwoff2dec.so.1.0.2
  libharfbuzz-icu.so.0
  libgstgl-1.0.so.0
  libgstcodecparsers-1.0.so.0
  libjpeg.so.8
  libenchant.so.1
  libsecret-1.so.0
  libhyphen.so.0
  libGLESv2.so.2

然后我尝试通过添加以下内容来安装必要的库以使捆绑版本的 playwright 工作:

RUN apt-get update && apt-get install -y wget --no-install-recommends \
    && apt-get update \
    && apt-get install -y \
    libvpx6 \
    lib64icui18n66 \
    libicuuc66 \
    ....

但我仍然收到这些错误:

E: Unable to locate package libvpx6 // I tried with libvpx5 but got the same error
E: Unable to locate package lib64icui18n66
E: Unable to locate package libicuuc66
....

Docker 操作系统

Distributor ID: Debian
Description:    Debian GNU/Linux 9.13 (stretch)
Release:        9.13
Codename:       stretch

有人可以帮忙吗?

【问题讨论】:

你用的是剧作家形象吗? @hardkoded 我有一个运行剧作家的节点项目,我通过命令将所有内容添加到 docker:... WORKDIR /app ADD 。 ./ 运行纱线安装 ... 【参考方案1】:

将此添加到您的 docker 文件中

FROM mcr.microsoft.com/playwright:v1.6.2-focal

上面的命令应该添加所有缺少的依赖项来启动测试。

【讨论】:

你知道debian 10的那个吗?谢谢。 应该是一样的。你能在 Debian 中检查这个吗? 谢谢! (其他原因也切换到 ubuntu)

以上是关于在 docker 中运行 playwright 时缺少依赖项的主要内容,如果未能解决你的问题,请参考以下文章

如何在 playwright 中运行自定义 js 函数

如何配置 playwright-jest 以排除测试套件(规范)文件以进行运行?

《Nuitka打包实战指南》实战打包Playwright

《Nuitka打包实战指南》实战打包Playwright

有人在 Windows Server 上安装并运行 Playwright 吗?

如何在 Playwright.js 中检查页面上是不是存在元素