Sobes.tech
Junior

Docker kontekstida entrypoint va cmd nima?

sobes.tech AI

AIdan javob

ENTRYPOINT konteyner ishga tushirilganda bajariladigan komandani belgilaydi. Agar docker run bilan CMD yoki buyruq parametrlar o'tkazilsa, ular bu komandaga argument sifatida qo'shiladi.

CMD ENTRYPOINT uchun standart argumentlar taqdim etadi yoki ENTRYPOINT belgilangan bo'lmasa, alohida buyruq sifatida bajariladi. Agar konteynerni ishga tushirishda parametrlar o'tkazilsa, ular CMD qiymatini ustun qiladi.

Farqlar:

Xususiyat ENTRYPOINT CMD
Maqsad Asosiy bajariladigan buyruqni belgilash Standart argumentlar yoki buyruq taqdim etadi
Ustun qilish docker run --entrypoint talab qiladi docker run argumentlari bilan ustun qilinadi
ENTRYPOINT bilan foydalanish ENTRYPOINT uchun argumentlar ENTRYPOINT mavjud bo'lmasa, standart buyruq

Misollar:

ENTRYPOINT va CMD bilan:

# Dockerfile
FROM alpine:latest
ENTRYPOINT ["echo", "Hello"]
CMD ["World!"]

docker run sizning-rasm bajarilganda: echo Hello World! bajariladi docker run sizning-rasm Universe! bajarilganda: echo Hello Universe! bajariladi

Faqat CMD bilan:

# Dockerfile
FROM alpine:latest
CMD ["echo", "Hello World!"]

docker run sizning-rasm bajarilganda: echo Hello World! bajariladi docker run sizning-rasm echo Hello Docker! bajarilganda: CMD ustun qilinadi va echo Hello Docker! bajariladi

ENTRYPOINT uchun tavsiya etiladi, bu bajariladigan fayl uchun va CMD yordamida bu faylga standart parametrlar uzatish uchun.