使用 Docker 自架 GitLab
在本文中,我們將介紹如何使用 Docker 構建和運行自己的 GitLab 實例。GitLab 是一個開源的 DevOps 平台,提供了代碼管理、CI/CD、項目管理等功能。通過使用 Docker,我們可以快速輕鬆地部署 GitLab,並且可以輕鬆地對其進行擴展和定製。
步驟一:安裝 Docker 和 Docker Compose
首先,確保您的系統上安裝了 Docker 和 Docker Compose。您可以按照官方文檔的指引進行安裝:
步驟二:創建 Docker Compose 文件
在您的項目目錄中創建一個名為 docker-compose.yml
的文件,並將以下內容添加到該文件中:
在這個 Docker Compose 文件中,我們定義了一個名為 gitlab
的服務,使用了 gitlab/gitlab-ce
映像。我們將 GitLab 的配置文件、日志文件和數據存儲到主機上的相應目錄中。這邊我使用的版本是15.8.0-ce.0
後續在測試時也都是使用這個版本的結果,所以如果讀者想要使用別的版本,遇到問題還是先以官方文件內容為主。
步驟三:啟動 GitLab 服務
在項目目錄中運行以下命令來啟動 GitLab 服務:
這將在後台啟動 GitLab 服務。首次運行此命令時,Docker 將從 Docker Hub 下載 GitLab 映像,這可能需要一些時間。
步驟四:訪問 GitLab
一旦 GitLab 服務啟動完成,您就可以通過瀏覽器訪問 GitLab。默認情況下,GitLab 將在 http://localhost
上運行。首次訪問 GitLab 時,您需要設置 root 用戶的密碼。
完成這些步驟後,您就可以開始使用自己的 GitLab 服務了!您可以註冊其他用戶、創建項目、推送代碼等。
自定義和擴展
通過 Docker Compose 文件,您可以輕鬆地對 GitLab 進行自定義和擴展。例如,您可以配置反向代理、添加額外的插件或定製 GitLab 的配置。
Gitlab 設定參數(gitlab.rb)
Path: /etc/gitlab/
主要是修改 clone url 問題,這邊有一些隱藏邏輯。
external_url
如果有帶 port 則會用這個 port 去監聽,但因為我是要在 Docker container 自己,所以這邊使用要特別注意搭配 Nginx 的 listen port 設定調整回去。nginx['listen_port'] = 80
自架Server重設管理員密碼
首先就先連進 GitLab container 根據以下內容執行重設管理員密碼
成功重設使用者密碼,會再 user.save
回傳 true
,這時就可以再開啟 http://localhost:10777 登入
結論
通過使用 Docker,我們可以快速輕鬆地構建和運行自己的 GitLab 實例。這使得 GitLab 的部署和管理變得非常簡單,同時也提供了豐富的自定義和擴展功能。現在您可以開始在自己的項目中使用 GitLab 了!
希望本文能夠對您有所幫助。祝您使用 GitLab 愉快!
Last updated