LAB CI/CD CƠ BẢN
“HELLO WORLD”
1. Mô hình LAB
Hình 1: Mô hình LAB sử dụng để thực thi
2.Yêu cầu
Thực hiện xây dựng luồng CI/CD cơ bản để thực hiện deploy thành công in ra “ Hello World” với gitlab server và Gitlab Runner.
- Các bước cài Gitlab Server
sudo yum -y update
sudo yum -y install curl vim policycoreutils python3-policycoreutils
sudo yum -y install postfix
sudo systemctl enable postfix && sudo systemctl start postfix
curl -s https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.rpm.sh | sudo bash
sudo yum install gitlab-ce
sudo vi /etc/gitlab/gitlab.rb
external_url 'http://gitlab.example.com' # Lưu ý: chỉnh sửa file thành địa chỉ card mạng để phù hợp bằng lệnh trên Centos: ifconfig
sudo gitlab-ctl reconfigure
sudo firewall-cmd --permanent --add-service={ssh,http,https} --permanent
sudo firewall-cmd –reload
- Sau đó đăng nhập với username mặc định thường là root và password tại vị trí : /etc/gitlab/initial_root_password theo địa chỉ đã tạo card mạng ở trên.
- Các bước cài Gitlab Runner
curl -L "https://packages.gitlab.com/install/repositories/runner/gitlab-runner/script.rpm.sh" | sudo bash
sudo yum install gitlab-runner
- Sau khi cài đặt xong thực hiện các bước để register Gitlab Runner với Gitlab Server
- Tạo project trên Gitlab Server
Đăng nhập vào Gitlab Server sau khi có username và password chọn “New project”
Sau đó chọn “Create blank project”
Sau đó điền tiên cũng như Description (nếu có) và chọn chế độ “Private, Internal, Public cần thiết và nhấn “Create project” phía cuối trang.
- Cấu hình SSH-Key
Trên cửa sổ Terminal của Centos nhập các lệnh sau để tạo SSH-Key:
ssh-keygen -t rsa
Một cửa sổ hiện ra như bên dưới bao gồm chọn nơi lưu Key cũng như mật khẩu nếu không có thể bỏ qua.
Tiếp theo thêm Key vào ssh-agent
eval "$(ssh-agent -s)"
ssh-add ~/.ssh/id_rsa
cat ~/.ssh/id_rsa.pub
Sau đó đoạn mã Key hiện ra và thực hiện copy:
Tiếp theo mở gitlab Server để thêm SSH-Key. Tạo cửa sổ nhấp vào biểu tượng hình bên góc phải và nhấn chọn Edit profile
Sau đó nhấn chọn SSH Keys bên góc trái:
Sau đó nhập SSH_Key đã copy và nhập các thông tin cần thiết sau đó nhấn Add Key.
- Sau đó cũng tại gitlab Server từ project đã tạo mới để nhận các thông tin cần thiết để register cho Gitlab Runner. Tiếp theo nhấn Settings và chọn vào CI/CD và mục bên phải ngay Runners chọn Expand
Ta sẽ nhận được link URL và Registeration để register cho Gitlab Runner:
- Tiếp theo ta mở Gitlab Runner tại cửa sổ Terminal của Centos:
Nhập lệnh: # sudo gitlab-runner register
Và nhập các URL và Token như hướng dẫn trên. Ngoài ra các thông số còn lại có thể khai báo khác nhưng ở đây Excutor mình chọn là thực hiện với Docker và có thể chọn shell (nếu bạn chưa cài Docker).
- Sau đó mở gitlab server và reload lại một Gitlab Runner đã được tạo.
Sau đó nhấn vào nút chỉnh sửa để thay đổi các thông tin cần thiết như hình bên dưới tích chọn Indicates… và bỏ chọn When……và nhấn Save changes