Sobes.tech
Junior — Middle

Кадрҳои натиҷаҳои интизоршаванда дар истифодаи ҳамзамон дар Dockerfile дар ENTRYPOINT ва CMD чӣ гуна метавонанд бошанд?

sobes.tech AI

Ҷавоб аз AI

Дар Dockerfile, дастурҳои ENTRYPOINT ва CMD дар якҷоягӣ муайян мекунанд, ки кадом команда ва бо кадом аргументҳо контейнер ҳангоми оғоз кардан иҷро хоҳад шуд.

  • ENTRYPOINT командаи асосиро муайян мекунад, ки ҳамеша иҷро мешавад.
  • CMD аргументии пешфарз барои ENTRYPOINT ё, агар ENTRYPOINT муайян нашуда бошад, командаи пешфарзро муайян мекунад.

Агар ҳар ду дастур ҳамзамон истифода шаванд, ҳангоми оғоз кардани контейнер команда чунин шакл мегирад:

ENTRYPOINT + CMD

Масалан:

ENTRYPOINT ["python"]
CMD ["app.py"]

Ҳангоми оғоз кардани контейнер, командаи python app.py иҷро мешавад.

Агар дар вақти оғоз кардани контейнер аргументҳои худро гузоред, онҳо CMD-ро иваз мекунанд, аммо ENTRYPOINT-ро не.

Бинобар ин, ENTRYPOINT файлро, ки бояд иҷро шавад, муайян мекунад ва CMD параметрҳои пешфарзро, ки метавонанд иваз шаванд, муайян мекунад.