Giả sử bạn làm một dự án về ASP .NET Core bạn sẽ cần .NET Core Runtime để có thể chạy ứng dụng, ngoài ta trong dự án có lưu các thông tin vào database dùng SQL Server, caching dữ liệu dùng Redis, cung cấp chức năng tìm kiếm sử dụng Elasticsearch ..... Khi đó để có thể triển khai và chạy ứng dụng này thì ta sẽ đưa hết tất cả các thành phần này vào cùng trong một thùng chứa (Container) hoàn toàn độc lập với các thùng chứa khác. Khi deploy hệ thống hoặc đưa cho người khác kiểm tra ta chỉ cần bê nguyên cả cái thùng này cho họ và tiến hành chạy. Mọi thứ cần thiết đã có hết ở bên trong. Đây là ưu điểm lớn nhất của Docker.
Mình sẽ có một bài viết khác giới thiệu sơ qua rõ hơn về Docker. Các bạn có thể tham khảo thêm tài liệu cụ thể trên trang chủ của Docker ở đây.
Bài này chỉ tập trung liệt kê các lệnh cơ bản khi làm việc với Docker. Các lệnh sẽ được cập nhật thường xuyên
Một số lệnh cơ bản
docker version
docker --version
docker info
docker --help
Liệt kê tất cả các containers
docker ps -a
docker ps -aq
Liệt kê tất cả các images
docker images
Stop tất cả các containers
docker stop $(docker ps -aq)
Xóa tất cả các containers
docker rm $(docker ps -aq)
Restart tất cả các containers
docker restart $(docker ps -aq)
Xóa tất cả images
docker rmi $(docker images -q)
Khởi chạy một container
docker start CONTAINER ID or NAME
docker start d3c4ab668be6
docker start local-rabbitmq
Tạm dừng một container
docker stop CONTAINER ID or NAME
docker stop d3c4ab668be6
docker stop local-rabbitmq
Xóa một container
docker rm CONTAINER ID or NAME
Khởi tạo và chạy container
docker run
Thay đổi tên container
docker rename
Thực thư lệnh trong container
docker exec
docker exec -it {container_name} /bin/bash
Pull một image từ Docker Hub
docker pull image_name
docker pull ubuntu:16.04
Xóa tất cả các containers đã dừng và các images không sử dụng
docker system prune -a
Xóa các containers, images, volumes không sử dụng
docker container prune
docker image prune
docker volume prune
Tag một image
docker tag ubuntu:16:04 tuannguyenssu/ubuntu:latest
Push một image lên Registry
docker push tuannguyenssu/ubuntu:latest
Xem thông tin chi tiết một container
docker inspect container_name
Thống kê tài nguyên sử dụng của các container đang chạy
docker stats
Save và Load image to/from file
docker save --output file.tar container_name
docker load -i file.tar
Hiển thị log
docker logs -f container_name
Liệt kê các networks
docker network ls
Liệt kê các volumes
docker volume ls
Copy files giữa host và container
docker cp src/. container_id_or_name:/target (host -> container)
docker cp container_id_or_name:/src/. target (container -> host)
Liệt kê lịch sử một image
docker history image_id
Đăng nhập/ Đăng xuất
docker login
docker logout
Một số lệnh với Docker Compose
docker-compose --help
docker-compose build
docker-compose build --parallel
docker-compose build --force-rm --no-cache --parallel
docker-compose build service_name
docker-compose up -d
docker-compose up -d --build
docker-compose up --no-build
docker-compose up service_name
docker-compose start
docker-compose start service_name
docker-compose stop
docker-compose stop service_name
docker-compose down
docker-compose -f docker-compose-file.yml
docker-compose config
docker-compose create
docker-compose events
docker-compose exec
docker-compose kill
docker-compose logs
docker-compose pause
docker-compose port
docker-compose ps
docker-compose pull
docker-compose push
docker-compose restart
docker-compose run
docker-compose scale
docker-compose top
docker-compose unpause
Tham khảo thêm
https://github.com/wsargent/docker-cheat-sheet
https://github.com/Haufe-Lexware/docker-style-guide
https://docs.docker.com/engine/reference/commandline/cli
Tiếp tục cập nhật ...
docker-compose build --force-rm --no-cache --parallel
docker-compose build service_name
docker-compose up -d
docker-compose up -d --build
docker-compose up --no-build
docker-compose up service_name
docker-compose start
docker-compose start service_name
docker-compose stop
docker-compose stop service_name
docker-compose down
docker-compose -f docker-compose-file.yml
docker-compose config
docker-compose create
docker-compose events
docker-compose exec
docker-compose kill
docker-compose logs
docker-compose pause
docker-compose port
docker-compose ps
docker-compose pull
docker-compose push
docker-compose restart
docker-compose run
docker-compose scale
docker-compose top
docker-compose unpause
Tham khảo thêm
https://github.com/wsargent/docker-cheat-sheet
https://github.com/Haufe-Lexware/docker-style-guide
https://docs.docker.com/engine/reference/commandline/cli
Tiếp tục cập nhật ...