【问题标题】:Cannot install Selenium chromedriver in a Docker Container无法在 Docker 容器中安装 Selenium chromedriver
【发布时间】:2022-06-17 22:31:29
【问题描述】:

我正在使用这个 Dockerfile 在 Docker 容器中安装 Selenium chromedriver:

FROM python:3.8

# install google chrome
RUN wget -q -O - https://dl-ssl.google.com/linux/linux_signing_key.pub | apt-key add -
RUN sh -c 'echo "deb [arch=amd64] http://dl.google.com/linux/chrome/deb/ stable main" >> /etc/apt/sources.list.d/google-chrome.list'
RUN apt-get -y update
RUN apt-get install -y google-chrome-stable

# install chromedriver
RUN apt-get install -yqq unzip
RUN wget -O /tmp/chromedriver.zip http://chromedriver.storage.googleapis.com/`curl -sS chromedriver.storage.googleapis.com/LATEST_RELEASE`/chromedriver_linux64.zip
RUN unzip /tmp/chromedriver.zip chromedriver -d /usr/local/bin/

ENV DISPLAY=:99

COPY . /app

WORKDIR /app

RUN pip install --upgrade pip

RUN pip install -r requirements.txt

RUN chmod 755 ./run.sh

ENTRYPOINT ["/app/run.sh"]

我之前已经使用过这个 Dockerfile 并且一切正常。 现在,我在运行时收到此错误:

docker build -t container .

构建时的错误:

[+] Building 2.8s (9/17)                                                                                                  
 => [internal] load build definition from Dockerfile                                                                 0.0s
 => => transferring dockerfile: 818B                                                                                 0.0s
 => [internal] load .dockerignore                                                                                    0.0s
 => => transferring context: 2B                                                                                      0.0s
 => [internal] load metadata for docker.io/library/python:3.8                                                        2.1s
 => [ 1/13] FROM docker.io/library/python:3.8@sha256:b9f9612dfd39f75b372056ebb50b9888b4ea7ba48e33d2342f7866816723fa  0.0s
 => [internal] load build context                                                                                    0.0s
 => => transferring context: 46.81kB                                                                                 0.0s
 => CACHED [ 2/13] RUN wget -q -O - https://dl-ssl.google.com/linux/linux_signing_key.pub | apt-key add -            0.0s
 => CACHED [ 3/13] RUN sh -c 'echo "deb [arch=amd64] http://dl.google.com/linux/chrome/deb/ stable main" >> /etc/ap  0.0s
 => CACHED [ 4/13] RUN apt-get -y update                                                                             0.0s
 => ERROR [ 5/13] RUN apt-get install -y google-chrome-stable                                                        0.7s
------                                                                                                                    
 > [ 5/13] RUN apt-get install -y google-chrome-stable:                                                                   
#8 0.262 Reading package lists...                                                                                         
#8 0.536 Building dependency tree...
#8 0.599 Reading state information...
#8 0.650 E: Unable to locate package google-chrome-stable
------
executor failed running [/bin/sh -c apt-get install -y google-chrome-stable]: exit code: 100
make: *** [build] Error 1

这里有什么问题?

【问题讨论】:

标签: docker selenium-webdriver dockerfile selenium-chromedriver


【解决方案1】:

为什么不直接使用一个已经存在的图像作为您的起点呢?例如,这看起来像是 chrome 和 python 的功能性 docker 镜像:

https://hub.docker.com/r/joyzoursky/python-chromedriver/

【讨论】:

    【解决方案2】:

    我有同样的问题,出现的错误是:

    selenium.common.exceptions.WebDriverException:消息:未知错误:Chrome 无法启动:异常退出。 (未知错误:DevToolsActivePort 文件不存在) (从 chrome 位置 /usr/bin/google-chrome 启动的进程不再运行,因此 ChromeDriver 假设 Chrome 已崩溃。)

    【讨论】:

      猜你喜欢
      • 2015-03-15
      • 1970-01-01
      • 1970-01-01
      • 2021-04-06
      • 2020-12-11
      • 2021-07-02
      • 2019-01-04
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多