GitLab不僅是一個源代碼管理工具,它還提供了一個統一的平台,將開發、運營和安全等流程整合在一起。通過GitLab,可以在單一的應用程序中進行專案計劃、源代碼管理、分支控制、CI/CD等操作。不論角色為何,GitLab提供了一個統一的資訊來源,讓你輕鬆地管理和追蹤整個開發流程。它消除了工具鏈的複雜性,提高了端到端流程的可視性,從而幫助組織更快地實現變革。

本篇文章主要紀錄使用docker建立gitlab的教學

準備環境

環境
OSUbuntu 20.04 LTS
GitlabGitlab-ce:15.8.0-ce.0
Docker Engine23.0.5

安裝gitlab

在安裝之前,先講解一下gitlab有哪些重要的資料需要掛載的,主要有以下三個路徑

  1. /var/opt/gitlab: 這個路徑主要儲存GitLab的資料。包括Git repo、用戶資料、配置文件等。掛載到本地後,即使容器發生意外被刪除或重新創建,資料也能夠得到保留,達到數據持久化。

  2. ./gitlab/logs:/var/log/gitlab: 這個路徑主要儲存GitLab的log。log包含GitLab的運行log、錯誤log等重要資訊。掛載到本地後,方便日後查看和管理log,並進行故障排除和監控。

  3. /etc/gitlab: 這個路徑主要儲存GitLab的設定檔,包含系統設定、用戶權限、外部整合等設定。掛載到本地後,可根據需求進行自定義調整。

講解完以上重要的掛載路徑後,接下來講解使用docker建立gitlab

docker版

docker run -d \
  --name gitlab \
  --restart always \
  --privileged \
  -p 8080:80 \
  -p 443:443 \
  -p 22:22 \
  -v ./gitlab/data:/var/opt/gitlab \
  -v ./gitlab/logs:/var/log/gitlab \
  -v ./gitlab/config:/etc/gitlab \
  gitlab/gitlab-ce:15.8.0-ce.0

docker-compose版

  1. 先建立docker-compose.yaml
  2. 將以下內容貼上
version: "3.6"
services:
  gitlab:
    image: gitlab/gitlab-ce:15.8.0-ce.0
    container_name: gitlab
    restart: always
    privileged: true
    hostname: 'localhost'
    ports:
      - '8080:80'
      - '443:443'
      - '22:22'
    volumes:
      - './gitlab/data:/var/opt/gitlab'
      - './gitlab/logs:/var/log/gitlab'
      - './gitlab/config:/etc/gitlab'
  1. 執行docker-compose up -d讓gitlab在後台運行
  2. 執行docker-compose logs -f檢查gitlab log是否有異常

登入gitlab

打開瀏覽器輸入localhost:8080就會看到以下畫面 預設密碼可進到gitlab容器內下cat /etc/initial_root_password

成功登入後就可以看到以下畫面,到這一步就已經完成gitlab的建立了