天天看點

Gitlab(docker)無限重新開機(gitlab-ctl: command not found)

                                           Gitlab(docker)無限重新開機

前兩天建構了一個虛拟機,想着搭建叢集,沒弄完,就把虛拟機停了,等我重新運作的時候,發現我的gitlab服務炸了,無限重新開機中。

#docker ps      
Gitlab(docker)無限重新開機(gitlab-ctl: command not found)

一個好習慣,檢視日志

#docker logs gitlab      
Gitlab(docker)無限重新開機(gitlab-ctl: command not found)

從gitlab日志知道

/assets/wrapper: line 112: /opt/gitlab/embedded/bin/runsvdir-start: No such file or directory

Configuring GitLab...

/assets/wrapper: line 115: gitlab-ctl: command not found

是runsvdir-start和gitlab-ctl 啟動檔案找不到。

報錯分析:

首先runsvdir-start和gitlab-ctl檔案存在與gitlab容器裡面,啟動時,檢查到兩個檔案丢失,gitlab容器便進入無限重新開機中。

錯誤處理:

對于這種,在docker機制下運作的容器,由于gitlab非正常運作,是無法進去到裡面的,就算能進去也會很快被強制退出的,是以出現這種就比較複雜一點。

--去官網看了很多關于gitlab(docker)的分析--

發現Docker對于gitlab(docker)的一般删除,資料是保留,而利用這一點,我們就可以baoli一點了。

删除gitlab

#docker rm gitlab      

重新建構gitlab

docker run -d --hostname gitlab.xxx.cn \
--publish 443:443 --publish 80:80 --publish 2222:22 \
--name gitlab --restart always --volume /srv/gitlab/config:/etc/gitlab \
--volume /srv/gitlab/logs:/var/log/gitlab \
--volume /srv/gitlab/data:/var/opt/gitlab \
gitlab/gitlab-ce:latest      

檢視運作端口

Gitlab(docker)無限重新開機(gitlab-ctl: command not found)

檢視gitlab運作狀況

Gitlab(docker)無限重新開機(gitlab-ctl: command not found)

重新整理gitlab界面

我之前建立的項目,并沒有丢失,完成了

Gitlab(docker)無限重新開機(gitlab-ctl: command not found)