docker安裝配置gitlab詳細過程

1、方法一

1

docker pull beginor/gitlab-ce:11.0.1-ce.0

2、方法二
如果服務器網路不好或者pull不下來鏡像,只能在其它網路比較好的機器上pull下來鏡像,導出成一個文件,
再下載上傳到網路不好的機器上,然后再從文件中導出來,這樣在網絡不好的機器上也能使用docker鏡像了。

?

運行

1、通常會將 GitLab 的配置 (etc) 、 日志 (log) 、數據 (data) 放到容器之外, 便于日后升級, 因此請先準備這三個目錄。

1

2

3

mkdir -p /mnt/gitlab/etc

mkdir -p /mnt/gitlab/log

mkdir -p /mnt/gitlab/data

2、準備好這三個目錄之后, 就可以開始運行 Docker 鏡像了。 我的建議是使用unless-stopped 作為重啟策略,?
因為這樣可以手工停止容器, 方便維護。

完整的運行命令如下:

1

2

3

4

5

6

7

8

9

10

docker run \

????--detach \

????--publish 8443:443 \

????--publish 8090:80 \

????--name gitlab \

????--restart unless-stopped \

????-v /mnt/gitlab/etc:/etc/gitlab \

????-v /mnt/gitlab/log:/var/log/gitlab \

????-v /mnt/gitlab/data:/var/opt/gitlab \

????beginor/gitlab-ce:11.0.1-ce.0

?配置GitLab主機名

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

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

1

vim /mnt/gitlab/etc/gitlab.rb

?

?2、修改/mnt/gitlab/data/gitlab-rails/etc/gitlab.yml

1

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

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

將host的值改成映射的外部主機ip地址和端口,這里會顯示在gitlab克隆地址

到此為止,gitlab的web管理頁面就可以正常訪問

如果還是不能正常訪問的話,檢查端口是否被占用?

端口被占用(這里不做)

如果端口號被占用,改了默認的80端口,后面要接端口號

1

external_url?'http://192.168.182.129:8090'?注:這里容器內沒改,只是映射到8090

修改NGINX監聽的端口為9999

1

2

nginx['listen_addresses'] = ['*']

nginx['listen_port'] = 8090

如果8080端口被Tomcat占用,會出現502的頁面

因此需要修改unicorn的配置,如下

1

2

3

4

5

6

7

### Advanced settings

# unicorn['listen'] = '127.0.0.1'

# unicorn['port'] = 8080

?

# 假設有Tomcat占用了8080,因此改為8082試一試

?unicorn['listen'] =?'127.0.0.1'

?unicorn['port'] = 8082


修改Gitlab數據存儲路徑(這里不做)

默認的Gitlab數據存儲路徑,在目錄/var/opt/gitlab/git-data下,防止以后數據過大,所以可以修改路徑存儲為/data/gitlabData

1

2

3

4

5

6

vim /mnt/gitlab/etc/gitlab.rb

### For setting up different data storing directory

###! Docs: https://docs.gitlab.com/omnibus/settings/configuration.html#storing-git-data-in-an-alternative-directory

###! **If you want to use a single non-default directory to store git data use a

###!?? path that doesn't contain symlinks.**

# git_data_dirs({ "default" => { "path" => "/var/opt/gitlab/git-data", 'gitaly_address' => 'unix:/var/opt/gitlab/gitaly/gitaly.socket' } })

1

2

#edited by ouyangpeng 2017-8-10? 配置gitlab的數據存儲位置為/data目錄下,保證硬盤安全

git_data_dirs({?"default"?=> {?"path"?=>?"/data/gitlabData"?} })

設置完后,過一段使用時間,可以看到該目錄下的resposities

配置并啟動GitLab

像上面步驟修改了GitLab的ip地址一樣,臨時修改了GitLab的配置之后,得執行如下的命令,應用重新配好的配置并重啟GitLab,然后查看GitLab的狀態。

因為是容器,所以要進入到gitlab容器中執行命令

1

docker exec -ti gitlab /bin/bash

然后

1

2

3

gitlab-ctl reconfigure? #花時間比較多

gitlab-ctl restart??? #改IP重啟就可以了

gitlab-ctl status

登陸

打開瀏覽器,輸入本機的ip地址并登陸

1

http://192.168.182.129:8090

  默認帳戶的用戶名是root,第一次訪問時,將被重定向到密碼重置屏幕,登錄后,您可以更改用戶名。

常用的幾個Gitlab命令

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

# 重新應用gitlab的配置

gitlab-ctl reconfigure

?

# 重啟gitlab服務

gitlab-ctl restart

?

# 查看gitlab運行狀態

gitlab-ctl status

?

#停止gitlab服務

gitlab-ctl stop

?

# 查看gitlab運行日志

gitlab-ctl tail

?

# 停止相關數據連接服務

gitlab-ctl stop unicorn

gitlab-ctl stop sideki

?

?錯誤

1、docker啟動報錯信息如下

1

Error response?from?daemon: driver failed programming external connectivity?on?endpoint quirky_allen<strong>解決:</strong>

解決

檢查docker端口映射是否沖突
重啟docker服務后再啟動容器

1

2

systemctl restart docker

docker start gitlab

?

參考文檔

docker安裝中文版的gitlab
https://hub.docker.com/r/beginor/gitlab-ce/

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/386791.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/386791.shtml
英文地址,請注明出處:http://en.pswp.cn/news/386791.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

集合對偶律:分別用圖文證明

集合幾個法則&#xff1a; 求證&#xff1a; 注&#xff1a;右上角C表示此集合的補集/余集 語言描述&#xff1a;A 并 B的補集 A的補集 交 B的補集 A交B的補集 A的補集 并 B的補集 文字證明&#xff1a;&#xff08;思路&#xff1a;證明兩個集合相等&#xff0c;可證兩集合…

keras實現嘴唇圖像autoencoder

本文分享了我在silent speech 項目過程中實現的基于嘴唇圖像數據集的autoencoder自編碼器。輸入輸出都是64?6464*6464?64的嘴唇灰度圖。自編碼器由編碼解碼兩個部分構成&#xff0c;同時實現了利用checkpoint在每個epoch運算時&#xff0c;自動保存測試集loss更小的模型。 數…

遠程導表

exp ibmscm1/ibmscM123112.35.32.77:1532/JD3 file/home/scmimp.dmp tablesS4I_BPM.ACT_DE_MODEL url: jdbc:oracle:thin:112.35.32.77:1532:JD3 username: ibmscm1 password: ibmscM123 exp ibmscm1/ imp/exp user/pwd//host:port/sid fileurl exp 用戶名/密碼數據庫…

historyReverser array reverse

historyReverser & array reverse "use strict";/**** author xgqfrms* license MIT* copyright xgqfrms** description historyReverser* augments Reverse 逆向 / Recursive 遞歸* example* link**/const historyReverser (datas [], text , debug false)…

pip國內加載速度慢解決方法

在國內使用pip安裝包時有時會發現安裝速度非常慢&#xff0c;甚至連接不上源。 為了加快pip的下載速度&#xff0c;我們可以主動使用 -i命令來切換到國內源。 下面放出實測好用的國內源 : 清華&#xff1a;https://pypi.tuna.tsinghua.edu.cn/simple 阿里云&#xff1a;http:…

oracle--導出、導入blob類型的字段

oracle--導出、導入blob類型的字段 blob是oracle中的一個數據類型&#xff0c;保存的是壓縮后的二進制形式的大數據。 數據遷移如果涉及到blob字段&#xff0c;都不好處理&#xff0c;因為無法用常規方法進行操作&#xff0c;如&#xff1a;使用select查看該字段&#xff0c;…

Feign Hystrix (HystrixCommonKey) 設置單獨接口的超時時間和FallBack

Feign設置單獨接口的超時時間和FallBack(HystrixCommonKey) HystrixCommonKey生成方法&#xff1a;類名#方法名(入參類型) final class Default implements SetterFactory { Override public HystrixCommand.Setter create(Target<?> target, Method method…

深度學習分布式訓練小結

分布式訓練本質上是為了加快模型的訓練速度&#xff0c;面對較為復雜的深度學習模型以及大量的數據。單機單GPU很難在有限的時間內達成模型的收斂。這時候就需要用到分布式訓練。 分布式訓練又分為模型并行和數據并行兩大類。 1. 數據并行 數據并行在于將不同batch的數據分別…

scrapy框架的理解

在每一次學習一個新東西之前&#xff0c;需要知道的幾個問題。這個東西是什么(what),怎么使用(how)&#xff0c;為什么(why) scrapy的概念&#xff1a;Scrapy是一個為了爬取網站數據&#xff0c;提取結構性數據而編寫的框架。 scrapy的作用&#xff1a;通過少量代碼實現快速抓取…

MAC配置JCO,與找不到sapjco3異常

①到jco官網下載jco壓縮包&#xff0c;解壓 ②把libsapjco3.jnilib 放到一個文件夾中 把該路徑配置到環境變量中 ③項目運行有可能會出現異常&#xff1a;找不到 sapjco3 &#xff1b; 第一種解決方式&#xff1a;配置虛擬機參數&#xff1a;-Djava.library.path之前環境變量路…

You must install pydot and graphviz for plotmodel to work報錯如何處理

本文主要記錄windows-anaconda環境下關于使用tensorflow.keras.utils.plot_model()方法時提示安裝pydot 和 graphviz的解決方法。 pydot的安裝非常簡單&#xff0c;進入anaconda python環境中&#xff0c;用pip進行安裝就可以了。 graphviz包的安裝就要稍顯復雜一些。 首先我們…

Java高并發之BlockingQueue

前言碎語 當系統流量負載比較高時&#xff0c;業務日志的寫入操作也要納入系統性能考量之內&#xff0c;如若處理不當&#xff0c;將影響系統的正常業務操作&#xff0c;之前寫過一篇《spring boot通過MQ消費log4j2的日志》的博文&#xff0c;采用了RabbitMQ消息中間件來存儲抗…

python中文字符串轉list

本文主要記錄了將中文字符串轉換為list的過程&#xff0c;其中我們使用了keras preprocessing中的text_to_word_sequence方法。這個方法是完全適配中文的。需要注意的是&#xff0c;中文語料一般字符之間是沒有空格分割的&#xff0c;這與英文是不同的。如下所示&#xff0c;如…

IP通信基礎回顧2(第三周)

1.TCP報文 序號字段占4個字節。TCP連接中傳送的數據流中每一個字節都編上一個序號。序號字段的值則是本報文段所發送的數據第一個字節的序號。 確認序號占4個字節。是期望收到的對方的下一個報文段字節胡序號。首部長度占4個字節。指出TCP首部長度在20-60字節之間&#xff0c;所…

ThreadPoolExecutor線程池 + Queue隊列

1&#xff1a;BlockingQueue繼承關系 java.util.concurrent 包里的 BlockingQueue是一個接口&#xff0c; 繼承Queue接口&#xff0c;Queue接口繼承 Collection BlockingQueue----->Queue-->Collection 圖&#xff1a; 隊列的特點是&#xff1a;先進先出&#xff08;FIFO…

python list pop方法

通過使用pop方法可以直接刪除列表中的某一個對應元素并返回該元素值 s [a, b, c, d] # 通過使用pop方法可以移除list中的一個元素并返回它的值 result s.pop(1) print(result) print(s)結果如下 b [a, c, d]

linux基礎文件管理軟硬鏈接

一、文件系統的基本結構 1、文件和目錄被組成一個單根倒置樹目錄結構 2、文件系統從根目錄下開始&#xff0c;用“/”表示 3、根文件系統&#xff08;rootfs&#xff09;&#xff1a;root filesystem文件名區分大小寫 4、以 . 開頭的文件為隱藏文件 5、路徑用/隔離 6文件有兩類…

mybatis動態更新xml文件后熱部署,不重啟應用的方法

mybatis應用程序&#xff0c;由于是半自動化的sql, 有大量的sql是在xml文件中配置的&#xff0c;而在開發程序的過程中&#xff0c;通常需要邊寫sql變調試應用。但在默認情況下&#xff0c;xml文件里配置的sql語句是被放入到緩存中去了&#xff0c;每次更改有sql語句的xml文件&…

Leetcode 反轉字符串 II python解法

題干&#xff1a; 給定一個字符串 s 和一個整數 k&#xff0c;從字符串開頭算起&#xff0c;每計數至 2k 個字符&#xff0c;就反轉這 2k 字符中的前 k 個字符。 如果剩余字符少于 k 個&#xff0c;則將剩余字符全部反轉。 如果剩余字符小于 2k 但大于或等于 k 個&#xff0c;…

下拉插件 (帶搜索) Bootstrap-select 從后臺獲取數據填充到select的 option中 用法詳解...

今天收到了客戶的需求&#xff0c;要求在新增停車場ID的時候要從數據庫查出來對應的停車場名稱然后顯示在界面上。保存的時候按照停車場ID進行保存。 自己首先把后臺的部分寫完了&#xff0c;測試了接口數據。成功的拿到了ajax數據。 接下來&#xff0c;自己用了select下拉標簽…