TGViewer
Библиотека девопса | DevOps, SRE, Sysadmin Библиотека девопса | DevOps, SRE, Sysadmin @devopsslib · 10.4K subscribers
Post #3768 1.44K
✏️ CMD vs ENTRYPOINT

Один из подписчиков недавно задал интересный вопрос:
Когда лучше использовать CMD, а когда ENTRYPOINT в Docker?


Эти два параметра могут запутать, но их применение зависит от того, как вы хотите запустить контейнер.

1️⃣ ENTRYPOINT — основная команда контейнера

Если вам нужно задать команду, которая всегда будет выполняться при запуске контейнера, используйте ENTRYPOINT.

Он задает команду, которая является обязательной для запуска контейнера, и её нельзя переопределить (без указания дополнительных аргументов).

Пример:
ENTRYPOINT ["python", "app.py"]

В этом случае контейнер всегда будет запускать python app.py

2️⃣ CMD — параметры по умолчанию

CMD — это параметры, которые могут быть переданы командной строкой при запуске контейнера.

Если CMD используется в Dockerfile, но команда не была указана при запуске контейнера, то используется команда из CMD. Он также может быть переопределен во время запуска.

Пример:
CMD ["python", "app.py"]


Но если вы хотите передать другие параметры, например:
docker run my_image python other_app.py

То CMD будет переопределен.

3️⃣ Комбинированное использование

Вы также можете использовать оба параметра вместе, когда хотите задать основную команду через ENTRYPOINT, а CMD использовать для указания параметров по умолчанию.

Пример:
ENTRYPOINT ["python"]
CMD ["app.py"]


Используйте ENTRYPOINT, если хотите, чтобы контейнер всегда выполнял одну конкретную команду.

Используйте CMD, если хотите задать параметры по умолчанию, которые можно переопределить при запуске контейнера.

Используйте оба вместе, чтобы задать команду с возможностью замены параметров.

💬 А какие у вас есть примеры использования CMD и ENTRYPOINT? Поделитесь своим опытом в комментариях 👇

🐸Библиотека devops'a #междусобойчик
  • 👍 15
  • 🥱 1
More from @devopsslib
  1. Oct 5, 2026SRE-инженеры, общий сбор 21 октября Т-Банк проведет онлайн-встречу «SRE-техтолк». Приглаша…
  2. Sep 29, 2026Для тех, кто работает с Kubernetes и облачной инфраструктурой, в октябре намечается отличн…
  3. Sep 25, 2026🤖 ИИ-агенту теперь можно поставить задачу прямо в GitLab — и не расписывать каждый следую…
  4. Sep 15, 2026😭 Как не потратить недельный лимит AI-кодинга за три дня? Разберём на вебинаре, как трати…
  5. Sep 15, 2026👩‍💻 Bash-скрипт для мониторинга сервисов Полноценный мониторинг вроде Zabbix или Prometh…
  6. Sep 13, 2026🌸 Вселенная намекает: пора уже начать этот курс С 14 сентября цены в Proglib Academy выра…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →