Đẩy hình ảnh Docker lên kho lưu trữ công cộng và riêng tư

Đẩy hình ảnh Docker lên nền tảng lưu trữ

Sau khi xây dựng xong một hình ảnh (image) tùy chỉnh, bước tiếp theo là chia sẻ hoặc triển khai nó. Việc đẩy hình ảnh lên các dịch vụ lưu trữ như Docker Hub hoặc Alibaba Cloud Container Registry giúp bạn dễ dàng phân phối và sử dụng lại trên nhiều môi trường.

Đăng tải lên Docker Hub

  • Tạo tài khoản Docker Hub: Truy cập https://hub.docker.com để đăng ký tài khoản nếu chưa có.
  • Đăng nhập qua dòng lệnh:
docker login -u ten_nguoi_dung -p mat_khau
  • Đổi tên hình ảnh theo định dạng người dùng/hình_ảnh:tag. Ví dụ, đổi tên hình ảnh mytomcat thành alexgong/tomcat:1.0:
docker tag mytomcat alexgong/tomcat:1.0
docker images

Kết quả sẽ hiển thị:

REPOSITORY          TAG       IMAGE ID        CREATED         SIZE
alexgong/tomcat     1.0       17c56d67c1d8    16 hours ago    663MB
  • Đẩy hình ảnh lên Docker Hub:
docker push alexgong/tomcat:1.0

Hệ thống sẽ bắt đầu tải từng lớp (layer) lên, kết quả tương tự như:

The push refers to repository [docker.io/alexgong/tomcat]
b8a5a0eded0e: Pushed
...
1.0: digest: sha256:27b242f62542d1cbd669a6e636d6526dc508ff30dfb8401d443415ed32817b16 size: 1585

Đăng tải lên Dịch vụ Hình ảnh Alibaba Cloud

  • Đăng nhập vào Alibaba Cloud, truy cập mục Container Registry trong bảng điều khiển.
  • Tạo không gian tên (namespace): Mỗi tài khoản có thể tạo tối đa ba namespace. Nên đặt theo tổ chức hoặc cá nhân (ví dụ: MyCompany), không nên đặt theo ứng dụng (như nginx).
  • Tạo kho hình ảnh (repository): Chọn namespace, đặt tên kho, loại kho (công khai hoặc riêng tư), và mô tả ngắn.
  • Sau khi tạo, chọn Quản lý để xem hướng dẫn đăng hình ảnh.

Các bước thực hiện cụ thể

  1. Đăng nhập vào registry của Alibaba Cloud:
sudo docker login --username=ten_dang_nhap registry.cn-shanghai.aliyuncs.com

Nhập mật khẩu khi được yêu cầu. Kết quả:

Login Succeeded

Thông tin đăng nhập sẽ được lưu tại /root/.docker/config.json, ví dụ:

{
  "auths": {
    "https://index.docker.io/v1/": {
      "auth": "YWxleGdvbmc6OTYyNDY0aHVhbmc2MTI="
    },
    "registry.cn-shanghai.aliyuncs.com": {
      "auth": "YWxleOmprOS4iuivu+WIneS4gDpBbGV4LUdDWA=="
    }
  }
}
  1. Đổi tên hình ảnh để phù hợp với địa chỉ registry của Alibaba:
docker tag 17c56d67c1d8 registry.cn-shanghai.aliyuncs.com/alexgong/tomcat:1.0

Kiểm tra lại danh sách hình ảnh:

REPOSITORY                                          TAG       IMAGE ID        SIZE
registry.cn-shanghai.aliyuncs.com/alexgong/tomcat   1.0       17c56d67c1d8    663MB
  1. Đẩy hình ảnh lên Alibaba Cloud:
docker push registry.cn-shanghai.aliyuncs.com/alexgong/tomcat:1.0

Kết quả tương tự:

The push refers to repository [registry.cn-shanghai.aliyuncs.com/alexgong/tomcat]
b8a5a0eded0e: Pushed
...
1.0: digest: sha256:... size: 1585
  • Truy cập giao diện web của Alibaba Cloud để kiểm tra hình ảnh đã được tải lên trong phần Phiên bản hình ảnh.

Thẻ: docker Docker Hub Alibaba Cloud Container Registry Image Push

Đăng vào ngày 27 tháng 6 lúc 13:10