Не могу собрать Dockerfile на сервере Ubuntu - PullRequest
0 голосов
/ 08 апреля 2020

Я работаю над проектом python, и у меня возникает эта проблема на сервере Ubuntu, когда я работаю на локальном Windows. Он останавливается на втором шаге при попытке выполнить инструкцию mkdir. Кажется, я не могу запустить типичные инструкции Ubuntu (apt-get clean, apt-get update)

Dockerfile

FROM python:3

RUN mkdir /code
WORKDIR /code
COPY requirements.txt /code/
RUN pip install --upgrade pip==20.0.2 && pip install -r requirements.txt
COPY . /code/

Ошибка вывода

OCI runtime create failed: container_linux.go:349: starting container process caused "process_linux.go:297: applying cgroup configuration for process caused \"mountpoint for devices not found\"": unknown

1 Ответ

0 голосов
/ 08 апреля 2020

Можете ли вы запустить образ Docker hello-world ? Если нет, это может указывать на проблему с вашей установкой / конфигурацией

$ docker run hello-world

Более подробную информацию о шагах после установки можно найти здесь . В противном случае первый вариант - попытаться перезапустить Docker

$ sudo systemctl restart docker

. Демон Docker должен работать с привилегиями root в фоновом режиме. У меня возникли проблемы до того, как на недавно установленном компьютере обновился групповые разрешения для демона не были применены полностью. Перезапуск демона или выход из системы и вход в систему могут исправить это.

Кроме того, когда вы объявляете WORKDIR внутри файла Docker, этот путь будет автоматически создан, если он еще не существует. После того как вы установили WORKDIR, все ваши пути могут и должны быть относительно него, если это возможно. Зная это, мы можем упростить Dockerfile

FROM python:3

WORKDIR /code
COPY requirements.txt .
RUN pip install --upgrade pip==20.0.2 && pip install -r requirements.txt
COPY . .

Этого может быть достаточно для решения вашей проблемы. По моему опыту, обратные трассировки Docker build иногда могут быть довольно расплывчатыми, но похоже, что эта конкретная ошибка может быть вызвана неудачной попыткой создать каталог, либо из-за проблемы с разрешениями на хост-машине, либо из-за синтаксиса внутри контейнер.

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