在 Dokcer 上安裝 GitLab
在 Unix-base 下要安裝 gitlab 很簡單,特別是用 docker 安裝更是簡單,在此紀錄一下安裝的過程以及遇到的問題及解法,讓自己以後可以參考。
整個流程是在macOS上安裝GitLab,環境為:
- macOS Big Sur (11.5.2)
- Docker 20.10.8
1. 下載與安裝 docker
要在 docker 上安裝,當然是要先下載 docker :
a. 下載 gitlab-ce (community edition)最新的docker映像檔
docker pull gitlab/gitlab-ce:latest
b. 下載完成後確認下載狀況
docker images
2. 下載 gitlab image
a. 建立 gitlab 資料夾,以便存放 gitlab container 的應用程式資料(datas)、日誌(logs)與及配置檔 (config)。
mkdir -p {location}/gitlab
{location}為要存放的目錄位置,例如 mkdir -p /home/gitlab
b. 設定 gitlab 環境變數
新增 GITLAB_HOME 此變數作為 gitlab 的位置變數
export GITLAB_HOME={location}/gitlab
3. 安裝 gitlab
輸入下面指令運行 gitlab container
docker run --detach \
--hostname gitlab.com \
--name gitlab \
--restart always \
--publish 10443:443 --publish 10080:80 --publish 10022:22 \
--volume $GITLAB_HOME/config:/etc/gitlab \
--volume $GITLAB_HOME/logs:/var/log/gitlab \
--volume $GITLAB_HOME/data:/var/opt/gitlab \
gitlab/gitlab-ce:latest
參數說明:
--detach
:以背景模式執行--hostname
:設定container內部的域名--name
:設定container的名稱--restart
:電腦啟動自動重啟--publish
:把本機的 port 映射到container 的 port--volume
:把本機檔案系統目錄映射到container的目錄
d. 確認啟動狀態
安裝完成後為確認是否以正確啟動,可以查看 docker 狀況
docker ps
之後在瀏覽器輸入 localhost:10080 即可看到註冊的畫面,那就表示已經完成安裝。
雖然完成了安裝,然而此時可能遇到一個問題:無法登入
此時需要進入 container 去修改 docker 密碼:
docker exec -ti gitlab bash
進入之後,用 root 權限執行如下指令,可以進入Ruby on Rails console
gitlab-rails console -e production
抓取第一位使用者 (因為剛安裝完成,所以沒有其他的註冊者帳號,此時第一位的使用者帳號會是 root)
user = User.where(id: 1).first
輸入 user 可以查看此名稱
user
此時 user 確定為 root 時就可以進行密碼變更,則執行以下指令
user.password = '{新密碼}'
user.password_confirmation = '{新密碼}'
最後儲存,並 Ctrl+d 即可完成
user.save!
如此變更密碼後就可以以 root 帳號使用新密碼登入