Install docker
#!/bin/sh
# From https://www.hiroom2.com/2017/09/24/parrotsec-3-8-docker-engine-en/
set -e
# Install dependencies.
sudo apt install -y curl apt-transport-https \
software-properties-common ca-certificates
# Install docker.
curl -fsSL https://download.docker.com/linux/debian/gpg | sudo apt-key add -
echo "deb [arch=amd64] https://download.docker.com/linux/debian stretch stable" | \
sudo tee /etc/apt/sources.list.d/docker-engine.list
sudo apt-get update -y
sudo apt-get install -y docker-ce
# Run docker.
sudo systemctl start docker
sudo systemctl enable docker
# Add user to docker group for using docker without sudo command.
sudo gpasswd -a "${USER}" docker
# Reboot
sudo reboot
Lưu ý: Khi gặp lỗi “Error response from daemon: cgroups: cgroup mountpoint does not exist: unknown.” thì dùng các bước sau để fix
sudo mkdir /sys/fs/cgroup/systemd
sudo mount -t cgroup -o none,name=systemd cgroup /sys/fs/cgroup/systemd
docker ps
Dùng để liệt kê ra các container đang chạy. Khi sử dụng với các tham số
-a/-all: Liệt kê tất cả các container, kể cả đang chạy hay đã kể thúc -q/-quiet: chỉ liệt kê ra id của các container.
docker pull
Hầu hết các image sẽ được tạo dựa trên các image cơ sở từ Docker Hub. Docker Hub chứa rất nhiều các image được dựng sẵn, mà ta có thể pull về và dùng mà không cần phải định nghĩa và cấu hình lại từ đầu. Để tải một image cụ thể hoặc một tập hợp image ta dùng docker pull.
docker pull nginx
docker pull mysql
docker build
Lệnh này dùng để build một image từ Dockerfile và context. Context ở đây là một tập file được xác đinh bởi đường dẫn hoặc url cụ thể. Ta có thể sử dụng thêm tham số -t để gắn nhãn cho image.
docker build -t your_name_container
docker run
Lệnh này dùng để chạy một container dựa trên một image mà ta có sẵn. Ta có thể thêm vào sau lệnh này một vài câu lệnh khác như -it bash để chạy bash từ container này.
docker run image_name -it bash
docker volume ls
Lệnh này dùng để liệt kê ra các volumn mà các container sử dụng, volume là một cơ chế dùng để lưu trữ dữ liệu sinh ra và sử dụng bởi Docker.
docker rm: Lệnh này dùng để xóa một hoặc nhiều container.
docker rm <list_container_name_or_id>
docker image ls
Liệt kê các image
docker image ls
docker rmi
Lệnh này dùng để xóa một hoặc nhiều images.
docker rmi <list_image_id>
Các lệnh dừng container:
Lệnh này dùng để stop một hoặc nhiều container. Ngoài ra ta có thể dung docker kill để bắt buộc container dừng lại.
docker stop <list_container_name_or_id>
Dừng tất cả container
docker kill $(docker ps -q)
Các lệnh xóa container
Xóa tất cả container
docker rm $(docker ps -a -q)
Lưu container thành image và bốc sang máy chủ khác:
Lưu lại:
docker save image-name > image-name.tar |
Mang sang máy khác và bung ra:
cat image-name.tar | docker load |
Nat port:
-p 80
Nhảy vào bash container:
docker exec -it <container name> /bin/bash
Xóa con ten nơ:
docker rm <con ten nơ name>