Sobes.tech
Junior — Middle

Koji rezultati se mogu očekivati pri istovremenom korišćenju instrukcija ENTRYPOINT i CMD u Dockerfile-u?

sobes.tech АИ

Одговор од АИ

U Dockerfile-u, instrukcije ENTRYPOINT i CMD zajedno određuju koji će se komandni niz i sa kojim argumentima izvršiti kontejner pri pokretanju.

  • ENTRYPOINT postavlja glavni komandni niz koji će uvek biti izvršen.
  • CMD postavlja podrazumevane argumente za ENTRYPOINT ili, ako ENTRYPOINT nije postavljen, podrazumevanu komandu.

Ako se obe instrukcije koriste istovremeno, pri pokretanju kontejnera, komandni niz će biti formiran kao:

ENTRYPOINT + CMD

Na primer:

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

Pri pokretanju kontejnera, izvršiće se komanda python app.py.

Ako prilikom pokretanja kontejnera prosledite sopstvene argumente, oni će zameniti CMD, ali ne i ENTRYPOINT.

Na ovaj način, ENTRYPOINT fiksira izvršni fajl, a CMD postavlja podrazumevane parametre, koje je moguće prepisati.