Skip to content
An`s Weblog
Go back

Docker Content Trust

1. Khái niệm Docker Content Trust (DCT)


2. Quy trình Ký số (Digital Signing) cho Docker Image

2.1. Tag Image mới

docker image tag <dockerhub-user>/weather-app:latest <dockerhub-user>/dct:latest

2.2. Tạo cặp khóa (Keypair) để ký

docker trust key generate <username>

Lưu ý: Lưu trữ tệp .pub (Public Key) an toàn để phân phối cho các Signer.

2.3. Thêm Signer vào Repository

docker trust signer add --key <public-key-file> <signer-name> <dockerhub-user>/dct

2.4. Thực hiện ký số cho Image

docker trust sign <dockerhub-user>/dct:latest

3. Quản lý và Khởi chạy với Docker Content Trust

3.1. Bật DCT tạm thời qua biến môi trường

export DOCKER_CONTENT_TRUST=1

Đặt =0 để tạm thời tắt kiểm tra DCT.

3.2. Push Image đã ký lên Docker Hub

docker login
docker image push <dockerhub-user>/dct:latest

3.3. Kiểm thử cơ chế DCT hoạt động

Xóa Image local và thử pull Image chưa được ký:

docker image rm <dockerhub-user>/weather-app:latest
docker image pull <dockerhub-user>/weather-app

Kết quả: Docker Daemon từ chối tải Image vì chưa có chữ ký số xác thực.

Thử pull Image chính thức từ Nginx đã được ký:

docker image pull nginx:latest

Kết quả: Tải thành công do Nginx Publisher đã ký số đầy đủ.


4. Bật Docker Content Trust vĩnh viễn qua daemon.json

Cấu hình tệp /etc/docker/daemon.json:

{
  "content-trust": {
    "mode": "enforced"
  }
}

Chế độ cấu hình:

Khởi động lại Docker Daemon để áp dụng:

sudo systemctl restart docker

5. Các lưu ý quan trọng


6. Tổng kết lệnh Docker Content Trust cơ bản

Mục đíchCâu lệnh
Tạo Keypairdocker trust key generate <username>
Thêm Signerdocker trust signer add --key <key-file> <signer> <repo>
Ký Imagedocker trust sign <image:tag>
Bật DCT tạm thờiexport DOCKER_CONTENT_TRUST=1
Push Signed Imagedocker image push <image:tag>
Bật DCT vĩnh viễnCấu hình mode: enforced trong daemon.json

Share this post:

Previous Post
Working with Secrets
Next Post
Working with Docker Security