Techniken zum Kopieren von Dateien
Übersicht über Dateiübertragungsmethoden
Docker bietet mehrere Techniken zum Kopieren von Dateien in Container, die jeweils unterschiedliche Anwendungsfälle und Szenarien abdecken.
1. COPY-Anweisung in der Dockerfile
Die COPY
-Anweisung ermöglicht das Hinzufügen von Dateien vom Host zum Container während der Image-Erstellung:
## Kopieren einer einzelnen Datei
COPY app.py /application/
## Kopieren mehrerer Dateien
COPY file1.txt file2.txt /destination/
## Kopieren eines gesamten Verzeichnisses
COPY ./src /application/
2. docker cp-Befehl
Der Befehl docker cp
ermöglicht das Kopieren von Dateien zwischen Host und laufenden Containern:
## Kopieren vom Host in den Container
docker cp ./localfile.txt container_name:/container/path/
## Kopieren vom Container zum Host
docker cp container_name:/container/file.txt ./local/path/
Vergleich der Kopiervorgänge
Technik |
Buildzeit |
Laufzeit |
Flexibilität |
Dockerfile COPY |
Ja |
Nein |
Statisch |
docker cp |
Nein |
Ja |
Dynamisch |
Erweiterte Kopiervorgänge
graph TD
A[Dateiübertragungsmethoden] --> B[Dockerfile COPY]
A --> C[docker cp-Befehl]
A --> D[Volume-Mounten]
Best Practices
- Verwenden Sie
.dockerignore
, um unnötige Dateien auszuschließen
- Minimieren Sie die Größe des Images
- Verwenden Sie mehrstufige Builds
- Verwenden Sie COPY vorzugsweise gegenüber ADD, wenn möglich
LabEx Lerntipp
Üben Sie diese Techniken in den interaktiven Docker-Umgebungen von LabEx, um praktische Erfahrungen mit der Dateiverwaltung zu sammeln.
Fehlerbehandlung
Überprüfen Sie immer die Dateiberechtigungen und Pfade beim Kopieren von Dateien, um erfolgreiche Übertragungen sicherzustellen.