Start·Terminal-Befehle

docker build

Pakete und Laufzeiten

Aufruf

docker build -t <name>:<tag> [-f <Dockerfile>] <context>

Baut ein Image aus einem Dockerfile; der Punkt am Ende ist der Build-Kontext, der an den Daemon geht — ein dicker Ordner bremst den Build, bis .dockerignore ihn kürzt, und COPY sieht nur Dateien innerhalb dieses Kontexts.

Häufige Optionen

OptionBedeutung
-t <name>:<tag>name the image; without it you only get an id
-f <file>use a Dockerfile that is not ./Dockerfile
--no-cacherebuild every layer
--build-arg KEY=valuepass an ARG into the build
--target <stage>stop at one stage of a multi-stage file
--platform linux/amd64build for another architecture
--progress=plainfull log output instead of the collapsed view

Beispiele

docker build -t myapp:1.0 .

builds from ./Dockerfile with the current folder as context

docker build -f docker/Dockerfile.dev -t myapp:dev .

another Dockerfile, same context

docker build --platform linux/amd64 -t myapp:1.0 .

an x86 image built on an Apple Silicon Mac

Die Frage ist immer, was wohin gehört: in dieses Projekt oder auf die ganze Maschine.

So liest man das

  • Eckige Klammern [ ] markieren einen Teil, den man weglassen kann.
  • Drei Punkte … heißen: mehrere sind erlaubt.
  • Optionen achten auf Groß- und Kleinschreibung — bei manchen Befehlen sind -r und -R verschieden.

Häufige Fragen

Q. Was macht docker build?

Baut ein Image aus einem Dockerfile; der Punkt am Ende ist der Build-Kontext, der an den Daemon geht — ein dicker Ordner bremst den Build, bis .dockerignore ihn kürzt, und COPY sieht nur Dateien innerhalb dieses Kontexts.

Q. Wie gibt man ihn ein?

docker build -t <name>:<tag> [-f <Dockerfile>] <context> — eckige Klammern markieren, was wegfallen darf.

Q. Wie viele Optionen lohnen sich?

Hier stehen 7; die vollständige Liste steht in man docker. Der Befehl gehört zu Pakete und Laufzeiten.

Verwandte Befehle

man-Seite: man docker-build