使用版本docker安装chrome驱动程序



我有一个docker文件,它使用alpine基础映像设置chromium浏览器和chromium驱动程序。目前它正在设置最新版本?有什么方法可以在这里指定版本吗?

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
不幸的是,

这是不可能的。从理论上讲,您可以使用类似的东西

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=1.0.154.65 
    chromium-chromedriver=1.0.154.65

但这失败了:

ERROR: unsatisfiable constraints:
  chromium-72.0.3626.121-r0:
    breaks: world[chromium=1.0.154.65]
  chromium-chromedriver-72.0.3626.121-r0:
    breaks: world[chromium-chromedriver=1.0.154.65]

原因是在更新 alpine 时会丢弃旧包。因此,如果您想使用特定版本的铬,您必须查看 https://pkgs.alpinelinux.org/packages?name=chromium&branch=v3.7 并搜索包含所需铬版本的高山版本,然后您需要使用该版本的阿尔卑斯山作为基本映像(例如,如果您希望 61.0.3163.100-r0 中的铬FROM alpine:3.7(。另一种解决方案是创建自己的镜像。

如果您需要更多信息,我可以推荐这篇博文

最新更新