Warning: mkdir(): No space left on device in /var/www/hottg/post.php on line 59

Warning: file_put_contents(aCache/aDaily/2025-07-19/post/devopsslib/--): Failed to open stream: No such file or directory in /var/www/hottg/post.php on line 72
✏️ CMD vs ENTRYPOINT @Библиотека девопса | DevOps, SRE, Sysadmin
TG Telegram Group & Channel
Библиотека девопса | DevOps, SRE, Sysadmin | United States America (US)
Create: Update:

✏️ 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 #междусобойчик

✏️ 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 #междусобойчик
Please open Telegram to view this post
VIEW IN TELEGRAM
👍14🥱1


>>Click here to continue<<

Библиотека девопса | DevOps, SRE, Sysadmin






Share with your best friend
VIEW MORE

United States America Popular Telegram Group (US)


Warning: Undefined array key 3 in /var/www/hottg/function.php on line 115

Fatal error: Uncaught mysqli_sql_exception: Can't create/write to file '/tmp/#sql-temptable-a06e-537def-215f.MAI' (Errcode: 28 "No space left on device") in /var/www/hottg/function.php:216 Stack trace: #0 /var/www/hottg/function.php(216): mysqli_query() #1 /var/www/hottg/function.php(115): select() #2 /var/www/hottg/post.php(351): daCache() #3 /var/www/hottg/route.php(63): include_once('...') #4 {main} thrown in /var/www/hottg/function.php on line 216