Trong bài viết này mình chia sẻ với anh em triển khai ứng dụng tự động với gitlab CI/CD. Toàn bộ quy trình được thực hiện ở video bên dưới.
1. Yêu cầu chuẩn bị
Để thực hiện anh em chuẩn bị cho mình một con máy ảo hoặc VPS hệ điều hành Ubuntu/Debian. Anh em nào mới bắt đầu thì có thể đăng kí một tài khoản trên DigitalOcean. Hiện tại có chương trình khuyến mãi tặng $200 dùng trong 60 ngày cho khách mới lần đầu đăng kí(lần trước là tặng $100). Mình có video hướng dẫn chi tiết quá trình đăng kí tại đây. Cấu hình tối thiểu máy ảo hoặc VPS như sau:
- Ram: 1-2G
- HDD: 10-20G
2. Triển khai
Sau khi có máy ảo/VPS anh em truy cập SSH vào server và tiến hành bài Lab. Đầu tiên anh em cài docker và docker-compose tham khảo scripts cài bài trước.
Nội dung và quy trình triển khai:
- Git repo build the CI/CD pipeline clone
- Tạo file .gitlab-ci.yml.
- Tạo Docker Hub
- Build và test CI/CD
Mô tả quy trình như sau:
- Khi client/dev commit code thì Gitlab ci sẽ trigger và chạy pipeline.
- Dựa vào kịch bản file .gitlab-ci.yml đã cấu hình lúc này ruuner sẽ được khởi động và tiến hành chạy.
- Tiếp đến khi chạy xong thì push image lên Docker Hub.
- Sau khi push xong thì sẽ tiếp hành deploy lên server ứng dụng bằng cách khởi tạo lại container
3. Lời kết
Trên đây là quy trình triển khai ứng dụng tự động với gitlab CICD bằng docker đơn giản dành cho anh em nào mới tìm hiểu về CI/CD. Mình chỉ mô tả lại tóm gọn quy trình đơn giản. Anh em xem video để có cái nhìn cụ thể và chi tiết hơn.
Chúc anh em thành công!
4. Các nguồn tham khảo
Bài viết mình sử dụng các nguồn tham khảo bên dưới. Anh em có thể đọc thêm:
Docker in Docker Image:
Docker in Docker Gitlab Docs:
Demo app Python:
Em mới tìm hiểu về CICD. Cảm ơn anh đã chia sẻ.