Friday, November 15, 2024

[Git] Cài đặt Gitlab

-

Gitlab một trong những phần mềm được sử dụng phổ biến để quản lý mã nguồn. Dù là cá nhân, tổ chức hay doanh nghiệp cũng nên sớm tìm hiểu và ứng dụng. Gitlab được biết đến là một phần mềm phổ biến được dùng để quản lý source code, nó cho phép các tổ chức hay cá nhân có thể lưu trữ và quản lý mã nguồn một cách dễ dàng thông qua kết nối internet. Trong bài viết dưới đây, mình sẽ hướng dẫn các bạn cài đặt Gitlab lên server của mình nhé.

1. Cài đặt bằng gói

Update hệ thống

apt update

Cài đặt một số thành phần bổ sung

apt install -y ca-certificates curl openssh-server tzdata

Thêm repo của Gitlab bằng script dưới

curl -sS https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.deb.sh | bash

Verify lại repo của đã được thêm

cat /etc/apt/sources.list.d/gitlab_gitlab-ce.list

Cài đặt Gitlab

apt install gitlab-ce -y 

Ràng buộc domain với gitlab.hoanghd.com là domain sẽ sử dụng để truy cập gitlab

sed -i 's|external_url .*|external_url 'http://gitlab.hoanghd.com'|' /etc/gitlab/gitlab.rb

Nếu bạn muốn thay đổi port truy cập web interface ta sử dụng command dưới

sed -i 's|listen.*|listen *:80|' /var/opt/gitlab/nginx/conf/gitlab-http.conf

Đừng quên khởi động lại gitlab

gitlab-ctl restart

Thực hiện reconfigure và kiểm tra lại status gitlab

gitlab-ctl reconfigure
/opt/gitlab/embedded/bin/runsvdir-start & gitlab-ctl reconfigure
gitlab-ctl status

Command dưới dùng để lấy mật khẩu root của Gitlab.

cat /etc/gitlab/initial_root_password

Dùng trình duyệt để truy cập theo url đã define http://gitlab.hoanghd.com với username là root và password vừa lấy được ở bước trên

2. Cài đặt bằng Docker.

Nếu chạy bằng docker, đơn giản bạn hãy chạy lệnh dưới, hãy thay thế các thông tin theo ý muốn của bạn nhé.

docker run --detach \
    --hostname gitlab.hoanghd.com \
    --publish 20443:443 --publish 2080:80 --publish 2022:22 \
    --name gitlab \
    --restart always \
    --volume /srv/gitlab/config:/etc/gitlab \
    --volume /srv/gitlab/logs:/var/log/gitlab \
    --volume /srv/gitlab/data:/var/opt/gitlab \
    --network=networt_name \
    gitlab/gitlab-ce:latest

Sau khi chạy lệnh trên xong, các bạn chờ khoảng 5 phút để quá trình build được hoàn thành. Sau khi build xong hãy sử dụng lệnh docker ps để xem thông tin.

$ docker ps
CONTAINER ID   IMAGE                           COMMAND                  CREATED         STATUS                            PORTS                                                                                                                     NAMES
5a013f6e905b   gitlab/gitlab-ce:latest         "/assets/wrapper"        4 seconds ago   Up 2 seconds (health: starting)   0.0.0.0:2022->22/tcp, :::2022->22/tcp, 0.0.0.0:2080->80/tcp, :::2080->80/tcp, 0.0.0.0:20443->443/tcp, :::20443->443/tcp   gitlab

Hãy sử dụng trình duyệt web login theo url http://<ip_server>:2080

Để lấy thông tin mật khẩu root, sử dụng lệnh dưới

$ docker exec -it gitlab grep 'Password:' /etc/gitlab/initial_root_password
Password: yzKQ4JBp7/Xi/ZesPVZeNixAV9Y69n6bzTX369APots=

3. Cài đặt bằng Docker Compose..

Ta có thể sử dụng file YAML để khai báo các thông tin tương tự như trong lệnh docker run. Ví dụ:

version: "3"
services:
  gitlab:
    container_name: gitlab
    image: gitlab/gitlab-ce:latest
    hostname: gitlab.hoanghd.com
    ports:
      - "20443:443"
      - "2080:80"
      - "2022:22"
    volumes:
      - /srv/gitlab/config:/etc/gitlab
      - /srv/gitlab/logs:/var/log/gitlab
      - /srv/gitlab/data:/var/opt/gitlab
    restart: always
    networks:
      - network_name
networks:
  network_name:

Trong file docker-compose.yaml này, ta có một service gitlab được định nghĩa với các thông số tương tự như trong lệnh docker run, bao gồm:

  • container_name: tên của container
  • image: tên image và phiên bản của Gitlab CE
  • hostname: hostname của container
  • ports: các cổng mà container sử dụng
  • volumes: các mount point được sử dụng
  • restart: chế độ khởi động container khi có lỗi xảy ra
  • networks: tên mạng mà container được kết nối

Ngoài ra, ta có định nghĩa network network_name để sử dụng cho container.

Sau khi tạo file docker-compose này, ta có thể sử dụng lệnh sau để chạy container:

docker-compose up -d

Lưu ý, nếu bạn đã có container đang chạy với tên gitlab thì nên dừng và xóa container đó trước khi sử dụng docker-compose up để chạy lại container mới.

LEAVE A REPLY

Please enter your comment!
Please enter your name here

4,956FansLike
256FollowersFollow
223SubscribersSubscribe
spot_img

Related Stories