❤️ AZDIGI chính thức cập nhật hệ thống blog mới hoàn chỉnh. Tuy nhiên có thể một số bài viết bị sai lệch hình ảnh, hãy ấn nút Báo cáo bài viết ở cuối bài để AZDIGI cập nhật trong thời gian nhanh nhất. Chân thành cám ơn.
Hướng dẫn kết nối S3 bằng CLI với MinIO Client (mc) đơn giản với hướng dẫn sau.
Giới thiệu về S3 và MinIO Client
S3 (Simple Storage Service) là giao thức lưu trữ đám mây phổ biến do AWS giới thiệu. Nó hoạt động theo mô hình:
- Bucket: giống thư mục gốc.
- Object: dữ liệu/file bên trong bucket.
- Key: đường dẫn định danh file.
Nhiều dịch vụ lưu trữ khác như DigitalOcean Spaces, Wasabi, Backblaze B2, và MinIO cũng hỗ trợ S3 API, nên bạn có thể dùng chung một công cụ để quản lý.
MinIO Client (mc) là một công cụ dòng lệnh (CLI) hỗ trợ:
- Quản lý bucket và object.
- Upload/download file nhanh chóng.
- Đồng bộ dữ liệu giữa các server S3-compatible.
- Thiết lập quyền truy cập linh hoạt.
Cài đặt MinIO Client
Trên Linux
Trên máy chủ Linux bạn thực hiện copy các lệnh sau và chạy ở cửa sổ Terminal
wget https://dl.min.io/client/mc/release/linux-amd64/mc
chmod +x mc
sudo mv mc /usr/local/bin/
Trên macOS
Đối với MacOS có sẵn Terminal, bạn chạy lệnh như sau để cài đặt.
brew install minio/stable/mc

Trên Windows
Trên Windows thì sẽ dễ dàng hơn bạn có thể cài đặt từ file exe
- Tải file:
https://dl.min.io/client/mc/release/windows-amd64/mc.exe
Thêm đường dẫn chứa mc.exe vào PATH để chạy ở mọi nơi.
Kết nối MinIO Client với S3
Đây là bước kết nối MinIO Client với S3. Thông tin S3 tại AZDIGI sẽ có dạng như sau
- Endpoint:
https://s3.example.com - Access Key:
ACCESS_KEY - Secret Key:
SECRET_KEY
Bạn cần đăng nhập vào tài khoản my.azdigi.com sau đó tìm tới phần dịch vụ S3 của mình :

Nếu mới đăng ký dịch vụ thì bạn cần bước đầu Generate Access Key

Sau đó bạn sẽ có thông tin Access Key và Secret Key. Lưu ý bạn cần note lại thông tin này, nếu quên bạn chỉ có thể xoá và tạo lại key mới.

Còn đây là thông tin Endpoint :

Bạn sử dụng các lênh sau để thực hiện kết nối. Và lưu ý cần nhập vào đủ các thông tin nhé.
mc alias set myS3 https://vn-fpt.azcloudstorage.com ACCESS_KEY SECRET_KEY
ở đây myS3 là alias tùy chọn để gọi nhanh khi dùng lệnh.

Các lệnh cơ bản với mc
Đối với mc có một số lệnh cơ bản sau. Tôi sẽ liệt kê các lệnh thường xuyên sử dụng nhất.
- Liệt kê bucket
mc ls myS3

- Tạo bucket mới
mc mb myS3/mybucket
- Upload file
mc cp file.txt myS3/mybucket/
- Download file
mc cp myS3/mybucket/file.txt ./
- Xóa file
mc rm myS3/mybucket/file.txt
Quản lý thư mục và file trên S3 (object)
Tạo thư mục
Ví dụ muốn chuyển file azdigi.txt lên thư mục quyenlt của S3, các bạn có thể tương tự với 1 file ảnh bất kỳ nhé
mc cp azdigi.txt myS3/azdigi-baiviet/quyenlt/

Kiểm tra xem đã có chưa
mc ls myS3/azdigi-baiviet/quyenlt/

Tương tự nếu bạn muốn đẩy thư mục và tất cả các file trong thư mục lên S3 :
mc cp --recursive scripts myS3/azdigi-baiviet/quyenlt/
Lúc này cần thêm --recursive để có thể đẩy cả dữ liệu bên trong thư mục đó lên.

Tải thư mục dữ liệu từ S3 về :
Ví dụ mình tải dữ thư mục scripts về máy, bạn có thể chọn đường dẫn chỉ định trên máy, hoặc tải ngay thư mục đường dẫn bạn đang đứng như sau :
mc cp --recursive myS3/azdigi-baiviet/quyenlt/scripts ./

Thiết lập quyền truy cập (public/private)
- Public một file
mc anonymous set public myS3/azdigi-baiviet/quyenlt/azdigi.txt

- Link truy cập sẽ là:
https://s3.example.com/azdigi-baiviet/quyenlt/azdigi.txt

- Private lại file
mc anonymous set private myS3/azdigi-baiviet/quyenlt/azdigi.txt

Lúc này truy cập link sẽ không xem được file :

Kết luận
MinIO Client (mc) là công cụ mạnh mẽ, linh hoạt, và dễ dùng để quản lý S3-compatible storage.
Với vài lệnh đơn giản, bạn có thể tạo bucket, upload/download file, và quản lý dữ liệu mọi lúc mọi nơi.
Nếu bạn thường xuyên làm việc với S3, hãy thử mc ngay hôm nay để tiết kiệm thời gian và tăng hiệu quả.
Nếu các bạn cần hỗ trợ các bạn có thể liên hệ bộ phận hỗ trợ theo các cách bên dưới:
- Hotline 247: 028 888 24768
- Ticket/Email: Bạn dùng email đăng ký dịch vụ gửi trực tiếp về: support@azdigi.com.
Có thể bạn cần xem thêm
Về tác giả
Thạch Phạm
Đồng sáng lập và Giám đốc điều hành của AZDIGI. Có hơn 15 năm kinh nghiệm trong phổ biến kiến thức liên quan đến WordPress tại thachpham.com, phát triển website và phát triển hệ thống.