Docker中运行Playwright报错:GitLab Runner环境下Chromium可执行文件不存在
GitLab Runner Shell执行器下Playwright浏览器路径错误解决办法
问题核心
Playwright已将Chromium下载至/root/.cache/ms-playwright/chromium-1134,但启动时却尝试读取/.cache/ms-playwright/chromium-1134/chrome-linux/chrome,本质是缓存路径的环境变量配置异常。
具体解决步骤
强制指定浏览器路径:在CI测试脚本开头添加环境变量,直接告知Playwright浏览器存储位置:
export PLAYWRIGHT_BROWSERS_PATH="/root/.cache/ms-playwright" # 随后执行测试命令,例如: npm run test调整浏览器下载路径到工作目录:若不想依赖root用户缓存,安装时指定自定义路径:
# 将浏览器安装到项目目录下的playwright-browsers文件夹 npx playwright install --with-deps chromium --path ./playwright-browsers # 测试前设置环境变量指向该路径 export PLAYWRIGHT_BROWSERS_PATH="./playwright-browsers" npm run test修正HOME环境变量:在GitLab CI的job配置中明确设置HOME为/root,确保Playwright读取正确缓存目录:
your-test-job: variables: HOME: "/root" script: - npm install - npx playwright install --with-deps - npm run test检查目录权限:确认GitLab Runner执行用户拥有
/root/.cache/ms-playwright的读取权限,避免因权限不足无法访问浏览器文件。
内容的提问来源于stack exchange,提问作者Roman Brauer
相关产品推荐
相关产品推荐

