我有一个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
(。另一种解决方案是创建自己的镜像。
如果您需要更多信息,我可以推荐这篇博文