Để triển khai tự động từ GitLab, cần có repository hợp lệ, cấu hình build và một dịch vụ nhận sự kiện. Bài hướng dẫn này mô tả quy trình kỹ thuật có thể áp dụng khi backend TDShift Mini PaaS hoàn thiện.
Bước 1. Chuẩn bị repository
Đưa source code lên GitLab; thêm Dockerfile, .dockerignore và .env.example. Không commit file .env chứa mật khẩu.
Bước 2. Phân nhánh
Ví dụ develop cho staging và main cho production. Bảo vệ nhánh production bằng merge request và review.
Bước 3. Thiết lập cơ chế kích hoạt
GitLab webhook có thể gửi sự kiện push tới deployment controller. Controller cần xác minh secret/signature phù hợp, định danh project/branch và chống replay. Không chạy lệnh shell trực tiếp từ payload không tin cậy.
Bước 4. Build và lưu image
Dùng runner hoặc builder cách ly, gắn tag image bằng commit SHA rồi đẩy tới registry. Secret dùng trong runtime không nên nhúng vào image.
Bước 5. Deploy và kiểm tra
Triển khai image đã build, chạy healthcheck và giữ cách quay về phiên bản ổn định trước nếu bản mới lỗi. Theo dõi log, CPU, RAM và dung lượng ổ đĩa.
Câu hỏi thường gặp
Push lên GitLab đã tự deploy ngay chưa?
Chưa, nếu chưa cài webhook, runner và deployment controller. Website giới thiệu TDShift không tự tạo pipeline cho mọi repository.
Có nên để Docker socket trong container build?
Không nên cấp quyền Docker socket của host cho mã nguồn không tin cậy. Ưu tiên builder/runner được cách ly với quyền tối thiểu.