CentOS7-Docker 安裝 Gitlab詳細篇


官方教程 
https://docs.gitlab.com/omnibus/docker/

 

建議虛擬機內存2G以上

搜索鏡像

docker search gitlab 

 

下載鏡像文件

docker pull docker.io/gitlab/gitlab-ce

 


注意:一定要配置阿里雲的加速鏡像
 

                     創建GitLab 的配置 (etc) 、 日志 (log) 、數據 (data) 放到容器之外, 便於日后升級, 因此請先准備這三個目錄。

mkdir -p /mnt/gitlab/etc
mkdir -p /mnt/gitlab/log
mkdir -p /mnt/gitlab/data

 

 

創建容器之前,我們先關閉下防火牆,重啟docker服務

systemctl stop firewalld.service
firewall-cmd --state
systemctl daemon-reload
systemctl stop firewalld.service

 

 

運行GitLab容器 

docker run \
--detach \
--publish 2222:22 \
--publish 8090:80 \
--publish 8443:443 \
--hostname 192.168.56.3 \
-v /mnt/gitlab/etc:/etc/gitlab \
-v /mnt/gitlab/log:/var/log/gitlab \
-v /mnt/gitlab/data:/var/opt/gitla \
-v /etc/localtime:/etc/localtime:ro \
--name gitlab \
--restart always \
--privileged=true gitlab/gitlab-ce:latest 

 

 運行成功之后,將掛載文件同步到容器外面

修改/mnt/gitlab/etc/gitlab.rb

把external_url改成部署機器的域名或者IP地址

vi /mnt/gitlab/etc/gitlab.rb

 

external_url 'http://192.168.56.3'

 

按 i 進行編輯,編輯好了按Esc,:wq 進行保存

修改/mnt/gitlab/data/gitlab-rails/etc/gitlab.yml

vi /mnt/gitlab/data/gitlab-rails/etc/gitlab.yml

找到關鍵字 * ## Web server settings *

按斜杠進行搜索

/Web server settings

 

 

我們進到目錄再看一下掛載文件是否同步到外面來了

[root@localhost ~]# cd /mnt/gitlab/etc/
[root@localhost etc]# ls
gitlab.rb            ssh_host_ecdsa_key      ssh_host_ed25519_key      ssh_host_rsa_key      trusted-certs
gitlab-secrets.json  ssh_host_ecdsa_key.pub  ssh_host_ed25519_key.pub  ssh_host_rsa_key.pub

 

 

這個時候我們把容器停止再刪除,然后重啟服務

[root@localhost ~]# docker stop 3f3d49ac7888aaf51d51761c27f92e4bf1b465f76b1a58f3428637b9c3ffd9b7
3f3d49ac7888aaf51d51761c27f92e4bf1b465f76b1a58f3428637b9c3ffd9b7
[root@localhost ~]# docker rm 3f3d49ac7888aaf51d51761c27f92e4bf1b465f76b1a58f3428637b9c3ffd9b7
3f3d49ac7888aaf51d51761c27f92e4bf1b465f76b1a58f3428637b9c3ffd9b7
[root@localhost ~]# systemctl restart docker
[root@localhost ~]#

 

再來重新創建容器

docker run \
--detach \
--publish 2222:22 \
--publish 8090:80 \
--publish 8443:443 \
--hostname 192.168.56.3 \
-v /mnt/gitlab/etc:/etc/gitlab \
-v /mnt/gitlab/log:/var/log/gitlab \
-v /mnt/gitlab/data:/var/opt/gitla \
-v /etc/localtime:/etc/localtime:ro \
--name gitlab \
--restart always \
--privileged=true gitlab/gitlab-ce:latest

 

這個時候我們來查一下,看一下容器有沒有分配ip地址,有的話表示創建容器成功了。

[root@localhost ~]# docker ps
CONTAINER ID        IMAGE                           COMMAND                  CREATED              STATUS              PORTS                                                 NAMES
d07898b3749d        gitlab/gitlab-ce                "/assets/wrapper"        About a minute ago   Up Less than a second (health: starting)   22/tcp, 0.0.0.0:8090->80/tcp, 0.0.0.0:8443->443/tcp   gitlab
f264e5f1be41        sonatype/nexus3                 "sh -c ${SONATYPE_DI…"   2 hours ago          Up 2 hours              0.0.0.0:8081->8081/tcp                                nexus
[root@localhost ~]# docker inspect d07898b3749d

 

 

訪問一下ip地址

[root@localhost ~]# curl 172.17.0.3:80
curl: (7) Failed connect to 172.17.0.3:80; Connection refused

 

拒絕連接,說明啟動沒有那么快,還需要一些時間

關閉防火牆,查看下狀態,這個時候防火牆已經關閉了。

[root@localhost ~]# systemctl stop firewalld.service
[root@localhost ~]# firewall-cmd --state
not running
[root@localhost ~]#

 

 查看了下容器狀態,發現gitlab一直是重啟狀態

[root@localhost ~]# docker ps
CONTAINER ID        IMAGE                           COMMAND                  CREATED             STATUSPORTS                    NAMES
d07898b3749d        gitlab/gitlab-ce:latest   "/assets/wrapper"        19 minutes ago      Restarting (1) 1 second ago    gitlab

 

查看日志

sudo docker logs gitlab

 

 

錯誤就不在這里演示了,通過谷歌解決了我的問題,

解決好之后重啟下服務跟gitlab

重新驗證,好了

 

 

 

 

等個幾分鍾,重新刷新下頁面

 

至此gitlab搭建成功了,歷經千辛萬苦。


免責聲明!

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



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