GitLab là phần mềm DevOps mã nguồn mở và miễn phí đi kèm nhiều công cụ để phát triển, bảo mật và vận hành phần mềm trong một ứng dụng duy nhất. Nó cung cấp kho lưu trữ không giới hạn miễn phí và cộng tác viên không giới hạn. Nó chủ yếu được sử dụng để lưu trữ kho lưu trữ Git, với các tính năng liên quan đến phát triển bổ sung như theo dõi sự cố. Nó rất giống với Github và Bitbucket và cho phép các cá nhân và nhóm chia sẻ mã từ xa với những người khác.
GitLab có bốn phiên bản chính:
Bạn sẽ nhận được kết quả sau:
Bạn có thể xác minh kho lưu trữ đã cài đặt bằng lệnh sau:
Bạn sẽ nhận được kết quả sau:
Bạn cũng có thể liệt kê kho lưu trữ GitLab bằng lệnh sau:
Bạn sẽ nhận được kết quả sau:
Sau khi cài đặt GitLab CE, bạn sẽ nhận được kết quả sau:
Thay đổi dòng sau bằng tên miền của bạn:
Lưu và đóng tệp sau đó định cấu hình lại GitLab bằng lệnh sau:
Sau khi CE GitLab được định cấu hình lại, bạn sẽ nhận được đầu ra sau:
Bây giờ bạn có thể kiểm tra trạng thái của GitLab CE bằng lệnh sau:
Bạn sẽ nhận được kết quả đầu ra sau:
Để dừng GitLab, hãy chạy lệnh sau:
Để khởi động GitLab, hãy chạy lệnh sau:
Sau khi hoàn tất, bạn có thể tiến hành bước tiếp theo.
Tiếp theo, tải lại daemon firewalld để áp dụng các thay đổi:
Sau khi tường lửa được cấu hình, bạn có thể tiến hành bước tiếp theo.
Bạn sẽ thấy mật khẩu gốc GitLab CE trong đầu ra sau:
Bây giờ, hãy mở trình duyệt web của bạn và truy cập giao diện web GitLab bằng URL
. Bạn sẽ được chuyển hướng đến trang đăng nhập GitLab:
Cung cấp tên người dùng gốc và mật khẩu của bạn, rồi nhấp vào nút Đăng nhập. Bạn sẽ thấy giao diện web GitLab trên trang sau:
Sau khi tạo bản sao lưu, bạn sẽ nhận được kết quả sau:
Theo mặc định, bản sao lưu GitLab được lưu trữ tại /var/opt/gitlab/backups. Bạn có thể thay đổi đường dẫn sao lưu bằng cách chỉnh sửa cài đặt trong tệp cấu hình GitLab tại /etc/gitlab/gitlab.rb.
Bạn có thể xác minh bản sao lưu đã tạo bằng lệnh sau:
Bạn sẽ nhận được kết quả sau:
Bạn sẽ được yêu cầu đặt mật khẩu mới như hiển thị bên dưới:
GitLab có bốn phiên bản chính:
- GitLab Community Edition - Miễn phí, mã nguồn mở và tự lưu trữ.
- GitLab Enterprise Edition - Tự lưu trữ và trả phí với các tính năng bổ sung.
- GitLab.com - Miễn phí và SaaS.
- GitLab.io - Phiên bản GitLab riêng do GitLab Inc. quản lý.
Điều kiện tiên quyết
- Máy chủ chạy Alma Linux 8.
- Tên miền hợp lệ được trỏ bằng IP máy chủ của bạn.
- Mật khẩu gốc được cấu hình trên máy chủ.
Thêm kho lưu trữ GitLab CE
Theo mặc định, gói GitLab không được bao gồm trong kho lưu trữ mặc định của Alma Linux. Vì vậy, bạn sẽ cần thêm kho lưu trữ chính thức của GitLab vào hệ thống của mình. Bạn có thể tải xuống và thêm tập lệnh sau để thêm kho lưu trữ GitLab.
Mã:
curl https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.rpm.sh | bash
Mã:
Hoàn tất!Đang tạo bộ đệm yum cho gitlab_gitlab-ce...Đang nhập khóa GPG 0x51312F3F: Userid: "GitLab B.V. (khóa ký kho lưu trữ gói) " Dấu vân tay: F640 3F65 44A3 8863 DAA0 B6E0 3F01 618A 5131 2F3F Từ: https://packages.gitlab.com/gitlab/gitlab-ce/gpgkeyĐang nhập khóa GPG 0xF27EAB47: Userid: "GitLab, Inc. " Dấu vân tay: DBEF 8977 4DDB 9EB3 7D9F C3A0 3CFC F9BA F27E AB47 Từ: https://packages.gitlab.com/gitlab/gitlab-ce/gpgkey/gitlab-gitlab-ce-3D645A26AB9FBD22.pub.gpgĐang tạo bộ đệm yum cho gitlab_gitlab-ce-source...Kho lưu trữ đã được thiết lập! Bây giờ bạn có thể cài đặt các gói.
Mã:
cat /etc/yum.repos.d/gitlab_gitlab-ce.repo
Mã:
[gitlab_gitlab-ce]name=gitlab_gitlab-cebaseurl=https://packages.gitlab.com/gitlab/gitlab-ce/el/8/$basearchrepo_gpgcheck=1gpgcheck=1enabled=1gpgkey=https://packages.gitlab.com/gitlab/gitlab-ce/gpgkey https://packages.gitlab.com/gitlab/gitlab-ce/gpgkey/gitlab-gitlab-ce-3D645A26AB9FBD22.pub.gpgsslverify=1sslcacert=/etc/pki/tls/certs/ca-bundle.crtmetadata_expire=300[gitlab_gitlab-ce-source]name=gitlab_gitlab-ce-sourcebaseurl=https://packages.gitlab.com/gitlab/gitlab-ce/el/8/SRPMSrepo_gpgcheck=1gpgcheck=1enabled=1gpgkey=https://packages.gitlab.com/gitlab/gitlab-ce/gpgkey https://packages.gitlab.com/gitlab/gitlab-ce/gpgkey/gitlab-gitlab-ce-3D645A26AB9FBD22.pub.gpgsslverify=1sslcacert=/etc/pki/tls/certs/ca-bundle.crtmetadata_expire=300
Mã:
dnf repolist
Mã:
repo id repo nameappstream Rocky Linux 8 - AppStreambaseos Rocky Linux 8 - BaseOSextras Rocky Linux 8 - Extrasgitlab_gitlab-ce gitlab_gitlab-cegitlab_gitlab-ce-source gitlab_gitlab-ce-source
Cài đặt GitLab CE trên Alma Linux 8
Tại thời điểm này, kho GitLab đã được tạo trên hệ thống của bạn. Bây giờ bạn có thể cài đặt GitLab CE bằng cách chạy lệnh sau:
Mã:
dnf install gitlab-ce -y
Mã:
Có vẻ như GitLab vẫn chưa được cấu hình; bỏ qua tập lệnh nâng cấp. *. *. *** *** ***** ***** .****** ******* ******** ******** ,,,,,,,,,************,,,,,,,,, ,,,,,,,,,,,,*********,,,,,,,,,,, ., ... _______ __ __ __ / ____(_) /_/ / ____ _/ /_ / / __/ / __/ / __ `/ __ \ / /_/ / /_/ /___/ /_/ / _ / / _/ / _ _/ _ _/_/\__/_/__/\__,_/_.___/Vui lòng cấu hình URL cho phiên bản GitLab của bạn bằng cách đặt `external_url`Cảm ơn bạn đã cài đặt GitLab!GitLab không thể phát hiện tên máy chủ hợp lệ cho phiên bản của bạn.cấu hình trong tệp /etc/gitlab/gitlab.rb.Sau đó, bạn có thể khởi động phiên bản GitLab của mình bằng cách chạy lệnh sau: sudo gitlab-ctl reconfigureĐể biết danh sách đầy đủ các tùy chọn cấu hình, vui lòng xem tệp readme Omnibus GitLabhttps://gitlab.com/gitlab-org/omnibus-gitlab/blob/master/README.mdGiúp chúng tôi cải thiện trải nghiệm cài đặt, hãy cho chúng tôi biết chúng tôi đã làm như thế nào với bản khảo sát kéo dài 1 phút:https://gitlab.fra1.qualtrics.com/jfe/form/SV_6kVqZANThUQ1bZb?installation=omnibus&release=14-8 Đang xác minh: gitlab-ce-14.8.2-ce.0.el8.x86_64 1/1Đã cài đặt: gitlab-ce-14.8.2-ce.0.el8.x86_64Hoàn tất!
Cấu hình GitLab CE
Tiếp theo, bạn sẽ cần định nghĩa tên miền của bạn trong tệp cấu hình GitLab. Để thực hiện, hãy chỉnh sửa tệp cấu hình GitLab:
Mã:
nano /etc/gitlab/gitlab.rb
Mã:
external_url 'http://gitlab.example.com'
Mã:
gitlab-ctl reconfigure
Mã:
Lưu ý:Tài khoản quản trị mặc định đã được định cấu hình với các chi tiết sau:Tên người dùng: rootMật khẩu: Bạn đã không chọn in mật khẩu gốc ban đầu vào STDOUT.Mật khẩu được lưu trữ vào /etc/gitlab/initial_root_password. Tệp này sẽ được dọn dẹp trong lần chạy định cấu hình lại đầu tiên sau 24 giờ.LƯU Ý: Vì các thông tin xác thực này có thể có trong tệp nhật ký của bạn dưới dạng văn bản thuần túy, nên bạn nên đặt lại mật khẩu theo https://docs.gitlab.com/ee/security/reset_user_password.html#reset-your-root-password.gitlab Đã cấu hình lại!
Mã:
gitlab-ctl status
Mã:
chạy: gitaly: (pid 26684) 69 giây; chạy: log: (pid 25075) 351 giâychạy: gitlab-exporter: (pid 26617) 73 giây; chạy: log: (pid 25555) 207 giâychạy: gitlab-kas: (pid 26585) 75 giây; chạy: log: (pid 25339) 334 giâychạy: gitlab-workhorse: (pid 26595) 74 giây; chạy: log: (pid 25472) 229 giâychạy: grafana: (pid 26665) 70 giây; chạy: log: (pid 26315) 110 giâychạy: logrotate: (pid 25000) 364 giây; chạy: log: (pid 25008) 363 giâychạy: nginx: (pid 25488) 226 giây; chạy: log: (pid 25499) 222 giâychạy: node-exporter: (pid 26603) 74 giây; chạy: log: (pid 25541) 213 giâychạy: postgres-exporter: (pid 26659) 70 giây; chạy: log: (pid 25891) 168 giâychạy: postgresql: (pid 25207) 341 giây; chạy: log: (pid 25218) 340 giâychạy: prometheus: (pid 26631) 72 giây; chạy: log: (pid 25629) 194 giâychạy: puma: (pid 25406) 249 giây; chạy: log: (pid 25417) 246 giâychạy: redis: (pid 25039) 358 giây; chạy: log: (pid 25047) 357 giâychạy: redis-exporter: (pid 26620) 73 giây; chạy: log: (pid 25575) 201 giâychạy: sidekiq: (pid 25423) 243 giây; run: log: (pid 25435) 239s
Mã:
gitlab-ctl stop
Mã:
gitlab-ctl start
Cấu hình Tường lửa
Tiếp theo, bạn sẽ cần cho phép dịch vụ HTTP thông qua firewalld. Bạn có thể cho phép nó bằng lệnh sau:
Mã:
firewall-cmd --permanent --add-service=http
Mã:
systemctl reload firewalld
Truy cập GitLab CE
Trước khi truy cập GitLab CE, hãy lấy mật khẩu gốc GitLab bằng lệnh sau:
Mã:
cat /etc/gitlab/initial_root_password
Mã:
# CẢNH BÁO: Giá trị này chỉ hợp lệ trong các điều kiện sau# 1. Nếu được cung cấp thủ công (thông qua biến môi trường `GITLAB_ROOT_PASSWORD` hoặc thông qua cài đặt `gitlab_rails['initial_root_password']` trong `gitlab.rb`, giá trị này được cung cấp trước khi cơ sở dữ liệu được gieo hạt lần đầu tiên (thường là lần chạy cấu hình lại đầu tiên).# 2. Mật khẩu chưa được thay đổi thủ công, thông qua UI hoặc qua dòng lệnh.## Nếu mật khẩu hiển thị ở đây không hoạt động, bạn phải đặt lại mật khẩu quản trị viên theo https://docs.gitlab.com/ee/security/reset_user_password.html#reset-your-root-password.Mật khẩu: XIlQ4/J7oQ49ZdNuGZto3f5vEJGHZJSTRSIuYL9z0/k=# LƯU Ý: Tệp này sẽ tự động bị xóa trong lần chạy cấu hình lại đầu tiên sau 24 giờ.
Cung cấp tên người dùng gốc và mật khẩu của bạn, rồi nhấp vào nút Đăng nhập. Bạn sẽ thấy giao diện web GitLab trên trang sau:
Cấu hình Sao lưu GitLab
GitLab cũng cho phép bạn tạo bản sao lưu của phiên bản GitLab. Để tạo bản sao lưu của phiên bản GitLab, hãy chạy lệnh sau:
Mã:
gitlab-rake gitlab:backup:create
Mã:
2022-03-11 11:13:11 +0000 -- xong2022-03-11 11:13:11 +0000 -- Đang tải dữ liệu lên ...2022-03-11 11:13:11 +0000 -- xong2022-03-11 11:13:11 +0000 -- Đang dựng dữ liệu ...2022-03-11 11:13:11 +0000 -- xong2022-03-11 11:13:11 +0000 -- Đang dựng dữ liệu ...2022-03-11 11:13:11 +0000 -- xong2022-03-11 11:13:11 +0000 -- Đang đổ các trang ...2022-03-11 11:13:11 +0000 -- xong2022-03-11 11:13:11 +0000 -- Đang đổ các đối tượng lfs ...2022-03-11 11:13:11 +0000 -- xong2022-03-11 11:13:11 +0000 -- Đang đổ các trạng thái terraform ...2022-03-11 11:13:11 +0000 -- xong2022-03-11 11:13:11 +0000 -- Đang đổ các hình ảnh đăng ký container ...2022-03-11 11:13:11 +0000 -- [ĐÃ TẮT]2022-03-11 11:13:11 +0000 -- Đang đổ gói ...2022-03-11 11:13:11 +0000 -- xongĐang tạo kho lưu trữ sao lưu: 1646997191_2022_03_11_14.8.2_gitlab_backup.tar ... xongĐang tải kho lưu trữ sao lưu lên bộ nhớ từ xa ... đã bỏ quaĐang xóa thư mục tmp ... xong
Bạn có thể xác minh bản sao lưu đã tạo bằng lệnh sau:
Mã:
ls /var/opt/gitlab/backups
Mã:
1646997191_2022_03_11_14.8.2_gitlab_backup.tar
Đặt lại mật khẩu gốc GitLab
Nếu bạn quên mật khẩu quản trị viên GitLab, bạn có thể dễ dàng đặt lại bằng lệnh sau:
Mã:
gitlab-rake "gitlab:password:reset"
Mã:
Nhập tên người dùng: rootNhập mật khẩu:Xác nhận mật khẩu:Đã cập nhật mật khẩu thành công cho người dùng có tên người dùng root.