Docker 部署 GitLab


Docker 部署 GitLab

環境: centos7 , docker18

 

1. 拉取鏡像

docker pull gitlab/gitlab-ce

 

2. 開啟容器

docker run -d \
-p 8023:443 \
-p 8020:8020 \
-p 8022:22 \
--name gitlab \
--restart always \
-v /home/gitlab/config:/etc/gitlab \
-v /home/gitlab/logs:/var/log/gitlab \
-v /home/gitlab/data:/var/opt/gitlab \
gitlab/gitlab-ce

 

 

 

# -d:后台運行
# -p:將容器內部端口向外映射(-p 8020:8020不再以80作為容器內默認端口,直接使用80會導致項目拉取時沒有端口號)
# --name:命名容器名稱
# -v:將容器內數據文件夾或者日志、配置等文件夾掛載到宿主機指定目錄

 

3. 配置

按上面的方式,gitlab容器運行沒問題,但在gitlab上創建項目的時候,生成項目的URL訪問地址是按容器的hostname來生成的,也就是容器的id。作為gitlab服務器,我們需要一個固定的URL訪問地址,於是需要配置gitlab.rb(宿主機路徑:/home/gitlab/config/gitlab.rb)。

# gitlab.rb文件內容默認全是注釋
$ vim /home/gitlab/config/gitlab.rb
# 配置http協議所使用的訪問地址,不加端口號
external_url 'http://192.168.91.128:8020'

# 配置ssh協議所使用的訪問地址
gitlab_rails['gitlab_ssh_host'] = '192.168.91.128'
# 此端口是run時22端口映射的8022端口 gitlab_rails['gitlab_shell_ssh_port'] = 8022 
gitlab_rails['time_zone'] = 'Asia/Shanghai'

:wq #保存配置文件並退出

 

進入gitlab容器內,重載配置,重啟容器

docker exec -it gitlab /bin/bash  進去gitlab容器的命令
gitlab-ctl reconfigure  重置gitlab客戶端的命令

 

4. 重啟容器

docker restart gitlab
此時項目的倉庫地址就變了。如果ssh端口地址不是默認的22,就會加上ssh:// 協議頭

5. 打開瀏覽器: http://192.168.91.128:8020

 

默認賬號:root

默認密碼可在容器中的配置文件查看,8ixoItOiRcLSc23hdwNDU4snn7PPl8ywFdaBd0DNiN8=

docker exec -it gitlab grep 'Password:' /etc/gitlab/initial_root_password

 

 登錄成功

 

 

漢化

 

 

 

 

6. 創建一個新項目

 

 

 

 

 7. ssh設置

  用戶本地安裝好git后,使用 git bash 生成 ssh,寫入正確的郵箱

ssh-keygen -t rsa -C 'xxx@xxx.com'

一路回車,生成密鑰

 

 

 

 查看密鑰

# ~表示用戶目錄,比如我的windows就是C:\Users\Administrator,並復制其中的內容
$ cat ~/.ssh/id_rsa.pub

 

 

 打開gitlab,找到Profile Settings-->SSH Keys--->Add SSH Key,並把上一步中復制的內容粘貼到Key所對應的文本框

 

 

 

 

8. 設置用戶配置,下載代碼

$ git config --global user.name "你的名字"
$ git config --global user.email "你的郵箱"

查看配置

 git config --global --list

 

 

 

完成

 

 

 創建賬戶 參考:https://blog.csdn.net/GyaoG/article/details/125583017

有兩種方式

1 管理員創建新用戶

2 用戶注冊,管理員審批

 

 

 

 

 

 

 

 

 

 

 

 

參考:https://www.jianshu.com/p/080a962c35b6

 


免責聲明!

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



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