CMD мен ENTRYPOINT қалай ерекшеленеді?
sobes.tech AI
AI-дан жауап
Dockerfile-да CMD және ENTRYPOINT контейнерді іске қосу үшін командаларды анықтайды, бірақ олардың әрқайсысының мақсаты мен мінез-құлқы әртүрлі.
-
CMD — әдепкі команда ретінде орнатылады, оны контейнерді іске қосқанда өзгертуге болады. Әдетте, ол аргументтерді немесе басқа команданы көрсету үшін пайдаланылады.
-
ENTRYPOINT — контейнер іске қосылғанда әрқашан орындалатын негізгі команданы орнатады. Іске қосу кезінде берілген аргументтер
ENTRYPOINT-ке қосылады.
Мысал:
ENTRYPOINT ["/bin/echo"]
CMD ["Hello, World!"]
docker run image деп іске қосқанда /bin/echo Hello, World! орындалады.
Егер docker run image Goodbye деп іске қоссаңыз, /bin/echo Goodbye орындалады.
Егер тек қана CMD қолданылса, онда аргументтермен іске қосқанда команда толықтай ауыстырылады.
Осылайша, ENTRYPOINT командасын бекітеді, ал CMD әдепкі аргументтерді анықтайды.