Copy dữ liệu ra hoặc vào Docker Container – Cuongquach.com | Bạn có một Docker Container đang chạy, vì lý do nào đấy bạn cần lấy các file dữ liệu đang nằm trong Docker Container đang chạy hoặc đưa dữ liệu ở ngoài vào Docker Container. Vậy thì bạn sẽ có cú pháp lệnh nào để thực hiện điều đó đây ? Cú pháp lệnh docker cp sẽ giúp bạn thực hiện điều này.
Copy dữ liệu ra hoặc vào Docker Container
Cú pháp:
1 2 3 |
docker cp <container_id>:/path/file /path/host docker cp /path/host <container_id>:/path/file |
Giờ ta thử nào . Khởi động một container nginx đơn giản lên.
1 2 3 4 5 6 |
# docker run -id nginx:latest 535ccf3af3efc862f919d1ed7f3cfc9ddc7d4bd9537e1b46351ab744f3fc4297 # docker ps CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 535ccf3af3ef nginx:latest "nginx -g 'daemon of…" 32 seconds ago Up 31 seconds 80/tcp exciting_lewin |
Giờ ta copy file cấu hình /etc/nginx/nginx.conf trong container ra ngoài local nhé.
1 2 3 |
# docker cp 535ccf3af3ef:/etc/nginx/nginx.conf . # ls -la nginx.conf -rw-r--r-- 1 cuongquachchi staff 643 Jan 21 20:36 nginx.conf |
Ngược lại giờ ta copy một file text linh tinh vào trong Docker Container Nginx đang chạy nhé.
1 2 |
# touch cuongquach-text.txt # docker cp cuongquach-text.txt 535ccf3af3ef:/etc/nginx/ |
Rồi chạy lệnh liệt kê thư mục /etc/nginx trong Docker Container Nginx thử xem có file cuongquach-text.txt không nhé.
1 2 3 4 |
# docker exec -it 535ccf3af3ef ls /etc/nginx conf.d koi-utf modules uwsgi_params cuongquach-text.txt koi-win nginx.conf win-utf fastcgi_params mime.types scgi_params |
Đơn giản phải không nào.
Nguồn: https://cuongquach.com/