Windows10 上Docker 安裝運行Gitlab


准備條件

  1. 安裝好Docker For Windows客戶端。
  2. 配置好Docker 阿里雲加速鏡像地址。
  3. 檢查Docker版本,大於等於v19。

拉取Gitlab鏡像

docker pull gitlab/gitlab-ce:latest

安裝GitLab

因為一些不確定的原因,這里推薦你切換到Linux的終端環境來執行一下命令,而不是使用PowerShell。

試玩:

docker run --publish 443:443 --publish 80:80 --publish 22:22 --name gitlab --restart always --volume /home/gitlab/config:/etc/gitlab --volume /home/gitlab/logs:/var/log/gitlab --volume /home/gitlab/data:/var/opt/gitlab gitlab/gitlab-ce

推薦:

docker run --publish 4433:443 --publish 7000:80 --publish 77:22 --name gitlab --restart always \
--volume /home/username/gitlab/config:/etc/gitlab \
--volume /home/username/gitlab/logs:/var/log/gitlab \
--volume /home/username/gitlab/data:/var/opt/gitlab \
gitlab/gitlab-ce

修改Gitlab管理員密碼

剛安裝完畢之后,從http://127.0.0.1:7000, 發現要求登錄。

image

但是我是第一次進來,哪里來的密碼?根據歷史經驗,用戶名應該是root,但是密碼多少呢?實在不知道去哪看,這里介紹一個修改密碼的方式。

1. 走Docker進入Gitlab容器

還是要切換到root權限來操作哈。

su root

進入名為gitlab的容器並且打開終端。

docker exec -it gitlab bash

image

2. 查詢除id為1的用戶來

user = User.where(id:1).first

image

從結果來看,查出來了id=1的用戶就是root

3. 修改這個用戶的密碼,並且同時修改確認密碼

user.password = '**********************'
user.password_confirmation = '**********************'

image

4. 保存新密碼

user.save!

image

看到這個true,那就是保存成功了,馬上我們就可以通過賬號root和新設置的密碼進去了。

image

修改Gitlab綁定地址

如果不修改,用Docker方式新建的Docker的地址就會變成實例Id名字,這樣肯定不行。

  1. 右鍵管理員權限打開PS,切換到root用戶獲取最高權限。
sudo su

  1. vim命令編輯gitlab的配置文件
vim /home/username/gitlab/config/gitlab.rb
  • 用快捷鍵i進入編輯模式。
  • 用Esc退出編輯模式
  • 用:wq保存並且退出Vim

修改前

修改后:

image

修改SSH地址:

gitlab_rails['gitlab_ssh_host'] = '*************.***.***'
gitlab_rails['gitlab_shell_ssh_port'] = 00000

image

  1. 重啟Gitlab的Docker實例生效
docker restart gitlab
  1. 你將得到一個可以http和ssh訪問的gitlab

新建並注冊GitLab Runner

注意,以下操作僅針對Docker場景,並且需要在Linux命令行執行最佳。

新建GitLab Runner

docker run -d --name gitlab-runner --restart always \
     -v /srv/gitlab-runner/config:/etc/gitlab-runner \
     -v /var/run/docker.sock:/var/run/docker.sock \
     gitlab/gitlab-runner:latest

備注--restart參數

Flag Description
no 不自動重啟容器. (默認value)
on-failure 容器發生error而退出(容器退出狀態不為0)重啟容器
unless-stopped 在容器已經stop掉或Docker stoped/restarted的時候才重啟容器
always 在容器已經stop掉或Docker stoped/restarted的時候才重啟容器

如果是已經運行的Docker實例,可以通過update命令更新設置

docker update --restart=always gitlab

注冊GitLab Runner

運行如下命令啟動注冊

docker run --rm -it -v /srv/gitlab-runner/config:/etc/gitlab-runner gitlab/gitlab-runner register

前往位置:Gitlab項目-Setting-CI/CD-Runners-Expand

接下來,會要求你填寫一些信息,其中Url地址和Token是需要你去GitLab項目CI/CD設置頁面得到的,其他的信息就隨意填寫了。

設置完之后,最好重啟一次實例。

docker restart gitlab-runner


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM