1. 程式人生 > >docker 部署Gitlab

docker 部署Gitlab

1、搜尋Gitlab

docker search gitlab

2、下載Gitlab

sudo docker pull gitlab/gitlab-ce:latest

3、檢視映象檔案

docker images

4、建立Gitlab掛載目錄,在/home/lp/docker/gitlab下分別建立config,logs,data目錄 5、建立docker中的網路

docker network create gitlab_net

6、使用映象啟動Gitlab容器

# 啟動映象
docker run -d --net=gitlab_net -p 10443:443 -p 11110:80 -p 10022:22  --name gitlab -v /home/lp/docker/gitlab/config:/etc/gitlab -v /home/lp/docker/gitlab/logs:/var/log/gitlab   -v /home/lp/docker/gitlab/data:/var/opt/gitlab  gitlab/gitlab-ce:latest

7、登入Gitlab,IP為宿主機IP地址http://127.0.0.1:11110如果訪問上面的地址頁面顯示502,一般是埠衝突了,需要修改/home/lp/docker/gitlab/config/gitlab.rb檔案,重啟docker容器即可。

unicorn['port'] = 8084

再次訪問地址,成功的話需要修改root賬號的密碼,隨意設定即可。密碼修改成功後,系統進入登入/註冊頁面這裡寫圖片描述使用root登入後這裡寫圖片描述

配置Gitlab

剛剛啟動Gitlab的時候需要我們輸入一個密碼,這個密碼是管理員使用者的密碼。我們在登入那裡使用root作為使用者名稱,然後用剛剛設定的密碼,就可以以管理員身份登入Gitlab。

登入進去之後,點選右上角的齒輪圖示,即可進入到管理員頁面。在這裡我們可以設定很多東西。比如說,預設情況下每個使用者只能建立10個倉庫,我們可以改變這個設定。在管理員頁面點選右面的齒輪,再點選設定,就會進入到系統設定中。然後找到Default projects limit一項,我們給它設個小目標,設它一個億,這樣就相當於無限倉庫了。當然如果你實際硬碟滿了也就不能在建立更多專案了。

如果這些配置還是不能滿足你的需求的時候,還可以直接配置Gitlab。首先進入到Docker環境中。我們使用下面的命令進入Docker環境的bash中。gitlab是剛剛指定的Gitlab名稱。

docker exec -it gitlab /bin/bash

然後就進入了Docker的環境中,我們可以把它當作一個獨立的系統來使用。然後編輯/etc/gitlab/gitlab.rb檔案,這是Gitlab的全域性配置檔案。所有選項都可以在這裡配置。 詳細的配置方法請看官方文件

更新Gitlab

以後如果需要更新Gitlab版本,首先需要停止並刪除當前的Gitlab例項。

docker stop gitlab
docker rm gitlab

然後在使用上次的配置執行Gitlab即可。不用擔心資料會丟失。只要你的volume引數指定還和上次一樣,Gitlab就會自動讀取這些配置。

docker run -d --net=gitlab_net -p 10443:443 -p 11110:80 -p 10022:22  --name gitlab -v /home/lp/docker/gitlab/config:/etc/gitlab -v /home/lp/docker/gitlab/logs:/var/log/gitlab   -v /home/lp/docker/gitlab/data:/var/opt/gitlab  gitlab/gitlab-ce:latest

我們在Gitlab的Bash中。依次輸入相應的命令,可看到下面的結果這裡寫圖片描述 我們看到Gitlab使用了4個開源軟體或執行環境:ruby、git、redis和postgresql。如果我們手動安裝Gitlab的話,這幾個軟體也必須分別安裝和配置好。這個任務的難度可是非常大的。而且如果需要在多臺機器上配置,那麼任務量就更大了。但是如果使用Docker的話,我們甚至完全沒必要知道這幾個軟體的存在,簡單兩條命令即可建立和執行Gitlab。這正是Docker的魅力,難怪現在越來越多的公司在使用Docker。