前言#
本文講述如何在 Debian 11 環境下使用 Docker 安裝 GitLab。
創建 Git 用戶組和用戶#
首先需要創建 git 的用戶組和用戶:
以上命令建議在安裝 Docker 之前執行。
已知使用 apt 安裝 Docker 會默認創建 GID 為 998 的 docker 組,會與 GitLab 的 git 組衝突,提前創建 GID 為 998 的組可避免手工修改。
安裝 Docker 和 Docker Compose#
參考:
創建應用#
創建 GitLab 應用及數據文件夾 /app/gitlab:
創建 /app/gitlab/docker-compose.yaml 文件,內容如下:
其中,example.com 修改為 GitLab 的域名,git.example.com 修改為 SSH 的域名。
進入應用文件夾,拉取鏡像並初始化服務:
配置#
首先停止服務:
修改 /app/gitlab/data/config/gitlab.rb 文件,依次查找取消註釋並修改即可:
啟動服務,應用配置:
SSH 轉發#
將容器內 SSH 密鑰映射到宿主機:
生成宿主機到容器的通信密鑰:
創建 gitlab-shell:
/opt/gitlab/embedded/service/gitlab-shell/bin/gitlab-shell 的內容如下:
注意將
git.example.com添加到/etc/hosts文件,指向127.0.0.1即可。
修改 docker-compose.yaml 文件,將掛載 /gitlab-data/ssh/authorized_keys 一行的註釋取消。
重啟服務:
配置 nginx 轉發#
nginx 配置文件示例:
結尾#
瀏覽器打開 https://example.com,嘗試一下!