Chào 500 anh em!!!. Lại là mình đây, hôm nay mình chia sẻ với anh em một tips về chủ đề Git+Docker đó là cài đặt GitLab Runner sử dụng môi trường Docker.
Gitlab cho phép chúng ta build image free trên các server của gitlab nhưng có giới hạn thời gian build trong 1 tháng. Nếu nhu cầu build image nhiều thì nên dựng riêng các GitLab Runner để build image đảm bảo và nhanh hơn.
Mục tiêu tips này giúp các bạn:
- Gitlab runner là gì?
- Tạo một gitlab runner trong môi trường Docker
Let's go thôi!!!
1. Cài Docker
sudo apt update
sudo apt install -y docker.io
Add ubuntu user to the docker group.
sudo gpasswd -a ubuntu docker
2. Tạo Runner Container
Sau khi cài Docker xong, chúng ta tạo một gitlab-runner container như sau:
docker run -d --name gitlab-runner --restart always \ -v /srv/gitlab-runner/config:/etc/gitlab-runner \ -v /var/run/docker.sock:/var/run/docker.sock \ gitlab/gitlab-runner:v15.8.2
Ở đây image mình lấy vesion v15.8.2 gitlab-runner:v15.8.2
các bạn muốn version mới nhất thì để latest
nhé!
Xem thêm một số thông tin về command GitLab Runner tại đây
3. Register một Runner
Để register một runner, các bạn dùng lệnh sau:
docker exec -it gitlab-runner gitlab-runner register
Nhập các thông tin bằng cách vào repo cần chạy CICD: Gitlab UI --> Settings --> CICD và chọn Expand
Copy registration token
và paste vào terminal
Các thông tin cần nhập vào như sau:
- Nhập URL https://gitlab.com/
- Nhập token ở trên.
- Nhập mô tả runner.
- Gắn tags cho runner có thể để trống
- Nhập docker.
- Nhập một image mặc định cho Docker image
Sau khi nhập xong khởi động lại runer
docker restart gitlab-runner
Refresh lại page Gitlab UI --> Settings --> CICD
và xem kết quả
4. Hiển thị các runner
Để hiển thị các runner đang chạy các bạn dùng lệnh
docker exec -it gitlab-runner gitlab-runner list
Kết quả hiện thị như sau:
Runtime platform arch=amd64 os=linux pid=66 revision=775dd39d version=13.8.0
Listing configured runners ConfigFile=/etc/gitlab-runner/config.toml
a9a3dd7b82bd Executor=docker Token=bxSoZytpPyWZLhB2MQQA URL=https://gitlab.com/
9bad45a61010 Executor=docker Token=AQbMBaySx4qj8236uYFR URL=https://gitlab.com/
5. Stopping, Starting và Restarting Runners
Một số lệnh Stopping, Starting và Restarting Runners
docker exec -it gitlab-runner gitlab-runner stop
docker exec -it gitlab-runner gitlab-runner start
docker exec -it gitlab-runner gitlab-runner restart
6. Huỷ, Xoá Runner
Khi không muốn sử dụng Runner nữa các bạn muốn huỷ hoặc xoá chúng đi thì dùng lệnh sau
docker exec -it gitlab-runner gitlab-runner unregister --name a9a3dd7b82bd
docker exec -it gitlab-runner gitlab-runner verify --delete
7. Configuration File
File cấu hình config.toml
được lưu tại /srv/gitlab-runner/config/config.toml
trên máy host.
Một vài thông tin các bạn có thể tuỳ chỉnh nếu muôn:
- log_level
- log_format
- concurrent
- check_interval Cấu hình runners được lưu giống như thế này:
[[runners]] name = "a9a3dd7b82bd" url = "https://gitlab.com/" token = "bxSoZxtpQyWZLhB2LQGA" executor = "docker" [runners.custom_build_dir] [runners.cache] [runners.cache.s3] [runners.cache.gcs] [runners.cache.azure] [runners.docker] tls_verify = false image = "alpine" privileged = true disable_entrypoint_overwrite = false oom_kill_disable = false disable_cache = false volumes = ["/cache"] shm_size = 0
Các bạn đọc thêm tại đây
8. Tổng kết
Có nhiều cách cài một Runner cho dự án. Hi vọng qua bài viết này các bạn có thêm một lựa chọn nữa để cài đặt runner chio dự án của mình.
Chúc các bạn thành công!