Docker: невозможно редактировать код в изображении из-за отсутствия bash - PullRequest
0 голосов
/ 18 июня 2019

У меня Ubuntu 18 работает на сервере AWS. На этом сервере у меня есть образ Docker, для которого я хочу изменить код, пока он еще работает.

ubuntu@ip-172-31-6-79:~$ docker images
REPOSITORY                 TAG                 IMAGE ID            CREATED             SIZE
fc                         latest              20949d0fd7ec        7 days ago          1.74GB
debian                     latest              8d31923452f8        5 weeks ago         101MB
ekholabs/face-classifier   latest              b1a390b8ec60        21 months ago       1.77GB

Чтобы изменить код, я выполнил следующую команду

ubuntu@ip-172-31-6-79:~$ docker run -it fc bash

Но я получаю следующую ошибку

python3: can't open file 'bash': [Errno 2] No such file or directory

Как мне исправить это, чтобы я мог редактировать код в изображении Docker. Как примечание стороны является Dockerfile

FROM debian:latest

RUN apt-get -y update && apt-get install -y git python3-pip python3-dev python3-tk vim procps curl

#Face classificarion dependencies & web application
RUN pip3 install numpy scipy scikit-learn pillow tensorflow pandas h5py opencv-python==3.2.0.8 keras statistics pyyaml pyparsing cycler matplotlib Flask

ADD . /ekholabs/face-classifier

WORKDIR ekholabs/face-classifier

ENV PYTHONPATH=$PYTHONPATH:src
ENV FACE_CLASSIFIER_PORT=8084
EXPOSE $FACE_CLASSIFIER_PORT

ENTRYPOINT ["python3"]
CMD ["src/web/faces.py"]

1 Ответ

1 голос
/ 18 июня 2019

Проблема в вашем докер-файле, который вы используете

ENTRYPOINT ["PYTHON3"]

, что означает, когда вы запускаете

docker run -it fc bash

конвертируется внутри контейнера в "python3 bash", поэтому у вас ошибка

python3: не удается открыть файл 'bash': [Errno 2] Нет такого файла или каталога

Попробуйте убрать ENTRYPOINT

Надеюсь, что решить эту проблему.

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