Hướng dẫn sử dụng docker

I. Các câu lệnh cài đặt và quản lý Docker

1.1.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ì thực hiện 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

1.2.Liệt kê các container đang chạy

docker ps -a

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.

1.3.Pull image từ Docker hub về máy

docker pull <image>

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.

II. Các câu lệnh thao tác trên Image

2.1.Tạo một container từ image

docker run <image>

Lệnh này dùng để chạy một container dựa trên một image mà ta có sẵn.

2.2. Khởi tạo container từ image và nhảy vào bash shell

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

2.3. Khởi tạo container từ image và NAT Port

docker run -p 8080:80 <image-name>

Mở tất cả các port có thể sử dụng -P và –publish-all

2.4. Khởi tạo container và truyền biến môi trường

docker run -e VAR1=value1 -e VAR2=value2 image

Bạn cũng có thể định nghĩa các biến môi trường trong một tệp tin và sử dụng cờ --env-file để truyền tệp tin đó vào container. Ví dụ:

docker run --env-file ./env.list <image>

2.5. Tự động xoá container khi nó thoát

docker run <image> --rm

2.6. Gán một volume cho một container được khởi tạo

docker run --volume /volume_name <image_name> bash

2.7. Liệt kê các image

docker image ls

2.8. Xoá một hoặc nhiều image

docker rmi <list_image_id>

III. Các câu lệnh thao tác trên container

1.1.Liệt kê các volume

Lệnh này dùng để liệt kê ra các volum 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 volume ls

1.2 Chạy một container đã chạy trước đó

docker start [OPTIONS] <container-id>

1.3.Liệt kê các container đang chạy

docker ps

1.4.Xoá một hoặc nhiều container

docker rm <list_container_name_or_id>

1.5.Dừng tất cả container

docker kill $(docker ps -q)

1.6. Nat port cho container

docker port <container-id> <container-port>

1.7.Nhảy vào bash container

docker exec -it <container name> /bin/bash

1.8. Tạo một image từ container

Bước 1: Tạo một Dockerfile: Bạn cần tạo một Dockerfile định nghĩa cách cài đặt và cấu hình ứng dụng của bạn. Dockerfile có thể được tạo bằng bất kỳ trình soạn thảo văn bản nào. Ví dụ:

sqlCopy codeFROM ubuntu:latest
RUN apt-get update && apt-get install -y python3
COPY . /app
WORKDIR /app
CMD ["python3", "app.py"]

Trong ví dụ trên, Dockerfile sử dụng image Ubuntu làm base image, cài đặt Python3, copy ứng dụng vào thư mục /app, thiết lập thư mục làm việc và khởi chạy lệnh python3 app.py khi container được khởi động.

Bước 2: Chạy lệnh docker build: Sau khi bạn đã tạo Dockerfile, bạn có thể chạy lệnh docker build để tạo image mới. Ví dụ:

docker build -t my-app-image .

Trong đó, -t được sử dụng để đặt tên cho image và . là đường dẫn đến thư mục chứa Dockerfile.

Lệnh này sẽ đọc Dockerfile của bạn và thực hiện các bước được định nghĩa trong đó để tạo một image mới và đặt tên là my-app-image.

Published by Nhat Truong

Hi

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

%d bloggers like this: