Как исправить ошибку зависимости в докере? - PullRequest
0 голосов
/ 26 февраля 2019

Я нашел базовый автономный образ Firefox, я пытаюсь запустить скрипт, используя селен с geckodriver, внутри контейнера докера, я пытался установить требования из файла Docker, но получаю ModuleNotFoundError: No module named 'selenium'

Этомой Dockerfile:

From selenium/node-firefox:3.141.59-iron

 # Set buffered environment variable
ENV PYTHONUNBUFFERED 1

 # Set the working directory to /app
USER root
RUN mkdir /app
WORKDIR /app

EXPOSE 80

 # Install packacges needed for crontab and selenium

RUN apt-get update && apt-get install -y sudo libpulse0 pulseaudio software-properties-common libappindicator1 fonts-liberation python-pip virtualenv
RUN apt-get install binutils libproj-dev gdal-bin cron nano -y

# RUN virtualenv -p /usr/bin/python3.6 venv36
# RUN . venv36/bin/activate

 # Install any needed packages specified in requirements.txt
ADD requirements.txt /app/
RUN pip install -r requirements.txt
ADD . /app/

ENTRYPOINT ["/bin/bash"]

Я ожидаю, что мой сценарий будет запущен, я не уверен, почему он использует Python2.7 в интерактивной оболочке, я думал, что образ докера селена поставляется с 3.6 и селен ужеустановлен

1 Ответ

0 голосов
/ 26 февраля 2019

Ваш контейнер поставляется с python (python 2) и python3.Это просто python по умолчанию для 2.7 экземпляра.Вы можете изменить это поведение, набрав:

RUN alias python=python3

в вашем Dockerfile

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...