Sobes.tech
Junior — Middle
105

Dockerfile-да RUN, CMD және ENTRYPOINT нұсқаулары қалай ерекшеленеді?

Сұралған компаниялар
СБЕРСБЕР

AI-дан жауап

sobes.tech AI

  • RUN выполняет команду во время сборки образа Docker. Результат команды сохраняется в слое образа. Используется для установки пакетов, настройки окружения и т.п.

  • CMD задаёт команду по умолчанию, которая будет выполнена при запуске контейнера. Если при запуске контейнера указана своя команда, CMD игнорируется.

  • ENTRYPOINT задаёт основную команду, которая всегда будет выполнена при запуске контейнера. Аргументы, переданные при запуске, добавляются к ENTRYPOINT.

Пример:

FROM ubuntu
RUN apt-get update && apt-get install -y curl
ENTRYPOINT ["curl"]
CMD ["--help"]

При запуске контейнера без аргументов выполнится curl --help. Если запустить с аргументами, например docker run <image> http://example.com, выполнится curl http://example.com.