Sobes.tech
Middle

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 әдепкі аргументтерді анықтайды.