Инструкции Dockerfile — различия между версиями
Root (обсуждение | вклад) |
Root (обсуждение | вклад) |
||
Строка 21: | Строка 21: | ||
MAINTAINER outlander <finston@gmail.com> | MAINTAINER outlander <finston@gmail.com> | ||
− | RUN apt-get update && apt-get install -y python3 && pip3 install flask && useradd -m app && apt-get clean | + | RUN apt-get update && \ |
+ | apt-get install -y python3 && pip3 install flask && \ | ||
+ | useradd -m app && \ | ||
+ | apt-get clean | ||
USER app | USER app |
Версия 15:28, 9 декабря 2020
Dockerfile - файл содержащий инструкции для создания образа контейнера
FROM - задаёт базовый (родительский) образ
LABEL - описывает метаданные. Например — сведения о том, кто создал и поддерживает образ
ENV - устанавливает постоянные переменные среды
RUN - выполняет команду и создаёт слой образа. Используется для установки в контейнер пакетов
COPY - копирует в контейнер файлы и папки
ADD - копирует файлы и папки в контейнер, может распаковывать локальные .tar-файлы
CMD - описывает команду с аргументами, которую нужно выполнить когда контейнер будет запущен. Аргументы могут быть переопределены при запуске контейнера. В файле может присутствовать лишь одна инструкция CMD(запускается оболочка /bin/sh)
USER - указывает от какого пользователя всё будет работать
WORKDIR - задаёт рабочую директорию для следующей инструкции
ARG - задаёт переменные для передачи Docker во время сборки образа
ENTRYPOINT - предоставляет команду с аргументами для вызова во время выполнения контейнера. Аргументы не переопределяются
EXPOSE - указывает на необходимость открыть порт, сам порт не открывает
VOLUME - создаёт точку монтирования для работы с постоянным хранилищем
MAINTAINER - информация об авторе имя и <email>
FROM ubuntu:18.04 MAINTAINER outlander <finston@gmail.com> RUN apt-get update && \ apt-get install -y python3 && pip3 install flask && \ useradd -m app && \ apt-get clean USER app COPY --chown=app:app . /srv/www/project WORKDIR /srv/www/project ENTRYPOINT ["cowsay"]