Mở đầu
Gitlab là một chương trình hỗ trợ mạnh mẽ trong quá trình xây dựng CI/CD dành cho các DevOps, một trong những từ khóa đang rất nổi và được nhiều người nhắc đến hiện nay. Vậy CI/CD là gì và làm thế nào chúng ta có thể xây dựng và áp được nó cho môi trường Doanh nghiệp hiện nay. Trong chuỗi bài viết này, tôi sẽ chia sẻ cách để bạn có thể xây dựng được CI (Continuous Integration) và CD (Continuous Delivery) với gitlab-ci.
Chúng ta sẽ lần lượt học cách cài đặt gitlab, gitlab-ci, gitlab-runner, cách để có thể viết được file gitlab-ci.yml dùng để áp dụng cho vòng lặp CI như Build code, unit test, integration test, scan vurnerability code. Bên cạnh đó, ta cũng sẽ học cách tiếp cận những kiến thức liên quan tới CD như docker, k8s, helm, cách triển khai helm như thế nào, cách để quản lý version trên GIT như thế nào để có thể áp dụng cho Production.
Phần 1: Cài đặt gitlab
1. Yêu cầu:
+ Server: Ubuntu > 16.04
+ CPU: Tối thiểu 4 CPU
+ Ram: Tối thiểu 8G
+ Disk: Tối thiểu 50G
Trong phần cài đặt này, chúng ta sẽ tiếp cận 2 cách. Một là cài đặt bằng Docker, hai là cài đặt trực tiếp lên server. Tùy vào trường hợp mà bạn sẽ lựa chọn cách nào cho môi trường của mình.
2/ Cài đặt Gitlab bằng Docker
2.1/ Cài đặt docker-compose
Đầu tiên, ta sẽ tiến hành setup docker-compose dùng quản lý cấu hình và cài đặt nhanh docker:
Truy cập website : https://github.com/docker/compose/releases/ để lấy phiên bản mới nhất của docker-compose. Sau khi tìm được phiên bản muốn cài đặt, chạy câu lệnh sau:
Ví dụ:
curl -L https://github.com/docker/compose/releases/download/1.27.4/docker-compose-`uname -s`-`uname -m` -o /usr/local/bin/docker-compose \
&& chmod +x /usr/local/bin/docker-compose \
&& docker-compose --version
2.2/ Tạo thư mới
Chạy câu lệnh sau để tạo ra các thư mục dùng để lưu trữ dữ liệu cho Gitlab:
mkdir -p /app/gitlab/config /app/gitlab/logs /app/gitlab/data
2.3/ Tạo file cấu hình docker-compose.yml
Copy nội dung sau vào file docker-compose.yml
version: "3.6"
services:
web:
container_name: gitlab
image: 'gitlab/gitlab-ee:latest'
restart: always
hostname: 'gitlab.local.com'
environment:
GITLAB_OMNIBUS_CONFIG: |
external_url 'http://gitlab.local.com'
ports:
- '80:80'
volumes:
- '/app/gitlab/config:/etc/gitlab'
- '/app/gitlab/logs:/var/log/gitlab'
- '/app/gitlab/data:/var/opt/gitlab'
Trong đó, bạn có thể đổi lại hostname cho phù hợp với môi trường.
2.4/ Khởi tạo môi trường gitlab
Sau khi đã tạo xong file docker-compose.yml, chạy câu lệnh sau để cài đặt gitlab:
docker-compose up -d
Đợi 1 khoảng thời gian cho gitlab bắt đầu quá trình khởi tạo
2.5/ Lấy password root
sudo docker exec -it gitlab grep 'Password:' /etc/gitlab/initial_root_password
2.6/ Truy cập gitlab
vim /etc/hosts
192.168.0.100 gitlab.local.com
3/ Cài đặt Gitlab trực tiếp trên server
3.1/ Cập nhật và cài các thư viện cần thiết
apt-get update
apt-get install ca-certificates curl openssh-server -y
3.2/ Cài đặt Gitlab
cd /tmp && \
curl -LO https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.deb.sh && \
bash /tmp/script.deb.sh && \
apt-get install gitlab-ce -y
gitlab-rake gitlab:env:info
3.3/ Cấu hình domain
vim /etc/gitlab/gitlab.rb
# configure external url
external_url 'http://gitlab.local.com'
3.4/ Reconfig gitlab
gitlab-ctl reconfigure
gitlab-ctl tail
3.5/ Cấu hình DNS và truy cập website
4. Kết bài
Nguồn: Truy Cập Diễn Đàn Ngay
congdonglinux.com forum.congdonglinux.com
[maxbutton id=”2″ ] [maxbutton id=”3″ ]
Mã Bài Viết: 897463
Đăng ký liền tay Nhận Ngay Bài Mới
Subscribe ngay
Cám ơn bạn đã đăng ký !
Lỗi đăng ký !
Add Comment