docker - Chromedriver 不适用于 Alpine 基础 Docker 映像
问题描述
我有一个应用程序,它使用基于 alpine 的图像,并且我在给定目录(/usr/bin/chromedriver/linux64/2.45/chromedriver)中有 755 权限的 chrome 驱动程序。
我得到以下给定的错误:
chromedriver-docker-example_1 | 2019-03-20 05:05:50.316 ERROR 21 --- [ null to remote] org.openqa.selenium.os.OsProcess : org.apache.commons.exec.ExecuteException: Execution failed (Exit value: -559038737. Caused by java.io.IOException: Cannot run program "/usr/bin/chromedriver/linux64/2.45/chromedriver" (in directory "."): error=2, No such file or directory)
可以请任何人帮忙吗?
解决方案
我能够解决它,对于高山我们需要安装铬驱动程序铬。添加下面给定的命令来设置它。
RUN apk update && apk add --no-cache bash \
alsa-lib \
at-spi2-atk \
atk \
cairo \
cups-libs \
dbus-libs \
eudev-libs \
expat \
flac \
gdk-pixbuf \
glib \
libgcc \
libjpeg-turbo \
libpng \
libwebp \
libx11 \
libxcomposite \
libxdamage \
libxext \
libxfixes \
tzdata \
libexif \
udev \
xvfb \
zlib-dev \
chromium \
chromium-chromedriver
然后将驱动程序路径指向/usr/bin/chromedriver。这应该解决给定的问题。
推荐阅读
- python - ValueError:在 groupby 对象上调用 pands value_counts() 时,操作数无法与形状一起广播
- python - 熊猫 - 参数为“1”的持续时间
- html - 在 wordpress 页面上的元素旁边添加一些文本
- c++ - 我可以将某些对象的指针保存在向量中,然后用这些指针调用内联函数吗
- python - 使用滞后的机器学习预测客户流失
- java - 使用 JUnit 5 的 @ParametrizedTest 而不是 @TestFactory Stream 有什么区别/优势
? - css - 如何推迟非批判性风格?
- sql - 使用 Amazon-redshift 提取括号中的数据
- laravel - 仅在刀片中显示特定条件的数据
- automation - 如何使用 Robot Framework 在浏览器的弹出窗口中输入文本