Bạn có chắc chắn muốn xóa bài viết này không ?
Bạn có chắc chắn muốn xóa bình luận này không ?
Các lệnh cơ bản với docker
Các lệnh cơ bản với docker
Mới chuyển qua dùng docker thay vì dùng vagrant, cảm giác là docker chạy rất nhanh và ko làm chậm hệ thống. Dưới đây là một số lệnh hay dùng trong Docker:
Pull một image từ Docker Hub
docker pull {image_name}
Liệt kê các images hiện có
docker images
Xóa một image
docker rmi {image_id/name}
Liệt kê các container đang chạy
docker ps
docker ps -a #Liệt kê các container đã tắt
Xóa một container
docker rm -f {container_id/name}
Đổi tên một container
docker rename {old_container_name} {new_container_name}
Khởi động một container
docker start {new_container_name}
docker exec -it {new_container_name} /bin/bash
Tạo mới một container, đồng thời khởi động với tùy chọn cổng và volume
docker run --name {container_name} -p {host_port}:{container_port} -v {/host_path}:{/container_path} -it {image_name} /bin/bash
Xem các thay đổi trên container
docker diff {container_name}
Commit các thay đổi trên container và image
docker commit -m "message" {container_name} {image_name}
Save image thành file .tar
docker save {image_name} > {/host_path/new_image.tar}
Tạo một image mới từ file .tar
cat musashi.tar | docker import - {new_image_name}:latest
Xem lịch sử các commit trên image
docker history {image_name}
Khôi phục lại images từ IMAGE_ID
docker tag {iamge_id} {image_new_name}:{tag}
Build một image từ container
docker build -t {container_name} .
Dấu.
ở đây ám chỉDockerfile
đang nằm trong thư mục hiện tại.
Câu hỏi:
Em có một câu hỏi về docker, mỗi khi chạy lệnh docker run
với image X, docker đều tạo ra một container mới với PID mới (có thể dùng lệnh docker ps
sẽ thấy), tuy nhiên mình có cách nào để docker run
một image X với một container đã tồn tại không ?
Em thấy nếu cứ mỗi lần develop mà chạy docker run thì sau này sẽ càng nhiều container id được tạo ra, cái này có thể gây lãng phí tài nguyên hệ thống nhỉ
Em có thử qua lệnh docker exec
tuy nhiên nó lại không có option bind port và volume như lệnh docker run
Cám ơn mọi người đã đọc.







