Безголовый драйвер Chrome перенаправляет все URL-адреса с http на https - PullRequest
1 голос
/ 26 сентября 2019

Я пытаюсь запустить тесты selenium-webdriver в док-контейнере без хрома для локального приложения (в другом контейнере Docker).Это локальное приложение не поддерживает https, только http.Но все вызовы драйвера на http автоматически перенаправляются на https.Однако на локальном Mac с той же версией chromedriver у меня нет такой проблемы

Я пробовал разные файлы Docker, но не повезло.

Мой dockerfile

FROM ruby:2.5.5-buster as deps

RUN apt-get update; \
    apt-get install -y \
  ruby-dev \
  chromium \
  xvfb \
  build-essential \
  libpcre3-dev \
  libmariadb-dev \
  postgresql \
  postgresql-contrib \ 
  libxml2-dev \
  libxslt-dev \
  libffi-dev \
  default-libmysqlclient-dev \
  curl \
  unzip \
  wget \
  ruby-nokogiri

# install google chrome
RUN wget https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb
RUN apt install -y ./google-chrome-stable_current_amd64.deb

# install chromedriver
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/

# set display port and dbus env to avoid hanging
ENV DISPLAY=:99
ENV DBUS_SESSION_BUS_ADDRESS=/dev/null

Что я получаю внутри контейнера:

irb(main):009:0> driver.get("http://app:4000/hotels/los-angeles/yoba")
=> nil
irb(main):010:0> driver.current_url
=> "https://app:4000/hotels/los-angeles/yoba"
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...