如何在Dockerfile中安装特定版本的Chrome?

bqujaahr  于 9个月前  发布在  Go
关注(0)|答案(3)|浏览(229)

有一个从python镜像安装的Dockerfile,然后我需要它来安装一个特定的(不是最新的)版本的Google Chrome。
这是我得到的:

FROM python:3.6

# Tools
RUN apt-get update \
    && apt-get install -y vim less \
    && apt-get clean

# https://github.com/SeleniumHQ/docker-selenium/blob/master/NodeChrome/Dockerfile.txt
#============================================
# Google Chrome
#============================================
# can specify versions by CHROME_VERSION;
#  e.g. google-chrome-stable=53.0.2785.101-1
#       google-chrome-beta=53.0.2785.92-1
#       google-chrome-unstable=54.0.2840.14-1
#       latest (equivalent to google-chrome-stable)
#       google-chrome-beta  (pull latest beta)
#============================================
ARG CHROME_VERSION="google-chrome-stable"
RUN wget -q -O - https://dl-ssl.google.com/linux/linux_signing_key.pub | apt-key add - \
  && echo "deb http://dl.google.com/linux/chrome/deb/ stable main" >> /etc/apt/sources.list.d/google-chrome.list \
  && apt-get update -qqy \
  && apt-get -qqy install \
    ${CHROME_VERSION:-google-chrome-stable} \
  && rm /etc/apt/sources.list.d/google-chrome.list \
  && rm -rf /var/lib/apt/lists/* /var/cache/apt/*

字符串
Chrome的安装步骤是从here(如评论中所示),甚至使用示例中的版本,我也会得到错误

E: Version '53.0.2785.101-1' for 'google-chrome-stable' was not found


尝试了https://chromereleases.googleblog.com/的其他版本,没有任何效果。
你知道安装特定版本的其他方法吗?或者我在这些步骤中是否做错了什么?

w3nuxt5m

w3nuxt5m1#

这花了我一段时间才找到,但你是从谷歌的存储库安装的,他们只保留最新版本的谷歌Chrome在他们的存储库。你可能会搜索第三方存储库,有旧版本的Chrome,但我个人不建议这样做。
目前的版本是google-chrome-stable75.0.3770.100-1在这篇文章的时间.这不会为你工作?
最后,我直接复制了你的dockerfile,它对我来说是有效的,在镜像上安装了最新的google-chrome-stable。你是如何运行docker的?
这是我的过程:
1.将Docker文件直接复制到./Dockerfile

  1. docker build ./
  2. docker image ls
    1.复制了我的图像ID(在我的情况下为90206843 f24 e)
  3. docker run --entrypoint "/bin/bash" -it 90206843f24e
    您将被放入docker镜像上的root shell中,以“戳”运行google-chrome -version来验证是否安装了上述版本
    我希望这对你有用。祝你好运,并保持联系!
4uqofj5v

4uqofj5v2#

对于最新版本,它可以工作。

Dockerfile

# Use a base image with a minimal Linux distribution
FROM python:3.6

# Install dependencies
RUN apt-get update && \
    apt-get install -y wget gnupg

# Download and install Google Chrome
ENV CHROME_VERSION=120.0.6099.129-1
RUN wget -q https://dl.google.com/linux/chrome/deb/pool/main/g/google-chrome-stable/google-chrome-stable_${CHROME_VERSION}_amd64.deb
RUN apt-get -y update
RUN apt-get install -y ./google-chrome-stable_${CHROME_VERSION}_amd64.deb

# Clean up
RUN apt-get clean && \
    rm -rf /var/lib/apt/lists/*

# Set up a user to run Chrome (optional)
RUN useradd -m -G audio,video chromeuser && \
    mkdir -p /home/chromeuser/Downloads && \
    chown -R chromeuser:chromeuser /home/chromeuser

USER chromeuser

# Command to run Chrome
CMD ["google-chrome-stable"]

字符串
in docker container

命令google-chrome --version

mftmpeh8

mftmpeh83#

跟进这个旧线程,补充说谷歌确实托管旧版本的谷歌Chromeyou can find a list of version numbers here)。
假设您需要Google Chrome 114.x.x.x,因为您的ChromeDriver版本仅支持Chrome版本114:

ENV CHROME_VERSION=114.0.5735.198-1
RUN wget -q https://dl.google.com/linux/chrome/deb/pool/main/g/google-chrome-stable/google-chrome-stable_${CHROME_VERSION}_amd64.deb
RUN apt-get -y update
RUN apt-get install -y ./google-chrome-stable_${CHROME_VERSION}_amd64.deb

字符串

相关问题