gitlab使用_使用 Docker 部署 Gitlab

GitLab 是一個用于倉庫管理系統的開源項目,使用Git作為代碼管理工具,并在此基礎上搭建起來的web服務,具有wiki和issue跟蹤功能。

GitLab是當前應用非常廣泛的源代碼管理系統。

1. 安裝docker引擎并啟動

3c0226c43fb78b5ee0f2a53c07dae04b.png

2. 獲取gitlab鏡像包

12e7e152f5cc93c64d28b0b22956f0c2.png

查看下載好的鏡像

a1d23ce79037f77e5e9e96a2c01623dd.png

3. 在本機準備gitlab工作目錄

23d4fae5b8acfdbfa9f6a994bdcb45a4.png

以上在本機建立的3個目錄是為了gitlab容器通過掛載本機目錄啟動后可以映射配置文件,數據文件,日志文件到本機,然后后續就可以直接在本機查看和編輯了,不用再進容器操作。

4. 啟動gitlab

9acd55d7f1047bbae0e5be432a5f2674.png

參數說明:

-d:后臺運行。

--name:設置容器的名字。

--hostname:設置容器內主機的名字。

--restart:設置容器的重啟策略,可選項:no | on-failure[:max-retries] | always | unless-stopped 。

-p?(小寫字母):映射端口,形式:[hostPort:]containerPort,如果不加主機端口,那么會在主機上生成隨機端口。

-v?(小寫字母):掛載目錄,形式:[HOST-DIR:]CONTAINER-DIR。

4. 檢查啟動信息

5126a586b4521f3a21f7fa096d18a681.png

啟動需要一些時間,過一段時間后再次查看

bec2d951c512f85a6175efdaceb724e8.png

再查看本機端口狀態

d99cefebf3691a15ddd63b79c7f9ef82.png

查看本機為gitlab容器新建的工作目錄內容

14be7504945af4582a5d20f6ae74cf2b.png

以上可以看出里面集成的東西還是挺多的。

5. 登錄gitlab

在瀏覽器輸入安裝gitlab容器的主機地址,形式?IP:PORT

6746cb2f1930afabf5a74f337657cc69.png

首次登錄設置新密碼,然后進入下一頁登錄界面,用戶名:root,密碼:<上一頁設定的密碼?>

a8c9f1261c3a91845aec6154787e002a.png

后面就可以使用了。

6. 排錯

如果初始登錄瀏覽器出現502那么請檢查是否端口沖突,修改文件gitlab.rb相關端口項?unicorn['port'] =PORT

也可以根據logs目錄中的信息跟蹤查詢,如果出現GitLab external URL must include a schema and FQDN,請嘗試修改gitlab.rb文件中的配置項格式 external_url?=?'gitlab.xxx.com' 或者 external_url? 'http://138.138.82.10'。

7. 更新GitLab

如果采用上述安裝方法,更新變的很簡單:停止gitlab容器,刪除停止的gitlab容器,獲取新鏡像,再次使用原來的啟動命令啟動出一個新gitlab容器即可。不用擔心數據丟失,只要掛載目錄與之前一致,就會自動讀取主機原來的目錄下的數據。

附. 常用gitlab命令

gitlab-ctl reconfigure????// 重新應用gitlab的配置gitlab-ctl restart????????????// 重啟gitlab服務gitlab-ctl status? ? ? ? ? ? ?// 查看gitlab運行狀態gitlab-ctl stop???????????????// 停止gitlab服務gitlab-ctl tail? ? ? ? ? ? ? ? ?// 查看gitlab運行日志

-?END?-

b21bdd03d80de5ceabe3f9e166ed4f72.gif推薦閱讀:

最主流的DevOps技能體系?fa4416672d0c8852349ee163209c9029.png

編寫Linux Shell腳本的最佳實踐

運維老鳥 - 寫給年輕的你們

一篇文章全面了解運維監控知識體系

做了這么多年運維工作,現在才看清職業方向

一文搞懂藍綠發布、灰度發布和滾動發布

運維工程師不得不看的經驗教訓和注意事項

K8S 到底要不要掌握??

fdff796fc7066ad1340b8bf6a337f5b7.png

年輕時偷的懶,遲早是要還的。點亮a60000051ac4e4544b4c17f5a429e40a.gif

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

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

相關文章

js--webSocket入門

Websocket 1.websocket是什么&#xff1f; WebSocket是為解決客戶端與服務端實時通信而產生的技術。其本質是先通過HTTP/HTTPS協議進行握手后創建一個用于交換數據的TCP連接&#xff0c; 此后服務端與客戶端通過此TCP連接進行實時通信。 2.websocket的優點 以前我們實現推送技術…

node.js繼承

person.js module.exports function(){   this.name "person";   this.sleep function(){     console.log("sleep in the night");   }   this.eat function(){     console.log(eat food);   }} student.js var util require(&qu…

研究死鎖–第5部分:使用顯式鎖定

在我的上一個博客中&#xff0c;我研究了使用Java的傳統synchronized關鍵字和鎖排序來修復破碎的&#xff0c;死鎖的余額轉移示例代碼。 但是&#xff0c;有一種替代方法稱為顯式鎖定。 這里&#xff0c;將鎖定機制稱為顯式而非隱式的想法是&#xff0c; 顯式表示它不是Java語…

mysql 經典入門教程_MySQL 經典入門教程

MySQL 經典入門教程1 定義數據庫中的表&#xff1a;一行叫一條記錄。每一列叫一個屬性&#xff0c;或一個字段。主鍵&#xff1a;表中的某個特殊字段&#xff0c;具有唯一的確定的值&#xff0c;可以根據該字段唯一的確定一條記錄外鍵&#xff1a;表中的某個字段的值為另一張表…

druid連接池初始化慢_7、SpringBoot -連接池(Durid)

一導入相關核心包<dependencies>二 在application.ymlspring三、配置Druid Datasource(可選)Configuration五、監控訪問 http://localhost:8080/druid&#xff0c; 使用上面配置的賬號密碼。四、自動配置原理源代碼Configuration說明DataSourceProperties 配置相關 首先找…

負載均衡與反向代理

如果用域名 映射多了Ip &#xff1b; 外網應該用來實現 GSLB 1 輪詢pstream nginxDemo { server 127.0.0.1:8081; server 127.0.0.1:8082; } 最少鏈接web請求會被轉發到連接數最少的服務器上。 upstream nginxDemo { least_conn; server 127.0.…

使用工廠方法模式設計最佳實踐

在前面的“設計模式”示例中&#xff0c;我們解釋了當今常用的“工廠”模式。 在本節中&#xff0c;我們將了解具有更多抽象的更高級的解決方案。 該模式稱為工廠方法設計模式。 定義&#xff1a; Factory方法模式提供了一種用于創建對象的方法&#xff0c;但是將對象創建委托…

偏導數

引入 一元函數導數&#xff1a; 在一元函數中&#xff0c;我們已經知道導數就是函數的變化率&#xff08;對于一個一元函數&#xff0c;x增大了多少&#xff0c;y增大了多少&#xff0c;這個就是變化率&#xff09;。對于二元函數我們同樣要研究它的“變化率”。在xOy平面內&am…

qt繪制一圈圓_Qt繪制圓

最近開始折騰Qt了&#xff0c;手頭上的一個項目需要用到Qt來繪制一些簡單圖像。記錄下Qt繪制圓的過程&#xff1a;對于以A為圓心&#xff0c;半徑為R的圓&#xff0c;外部有一個外切的正方形&#xff0c;正方形上有B點。如下圖所示&#xff1a;對于void QPainter::drawArc(int …

前端基礎之HTML

HTML介紹 Web服務本質 import socketsk socket.socket()sk.bind(("127.0.0.1", 8080)) sk.listen(5)while True:conn, addr sk.accept()data conn.recv(8096)conn.send(b"HTTP/1.1 200 OK\r\n\r\n")conn.secd(b"<h1>Hello world!</h1&g…

指令引用了 內存 該內存不能為read 一直彈窗_【翻譯】使用Rust測試ARM和X86內存模型

原文標題: The Story of Tail Call Optimizations in Rust 原文標題: Examining ARM vs X86 Memory Models with Rust原文鏈接: https://www.nickwilcox.com/blog/arm_vs_x86_memory_model/公眾號&#xff1a; Rust碎碎念蘋果公司最近宣布&#xff0c;他們將要把筆記本和桌面電…

Docker應用二:docker常用命令介紹

Docker常用命令使用介紹 docker中常用的命令: 1、docker search image_name:搜查鏡像 2、docker pull image_name:從鏡像庫中拉去鏡像 3、docker run image_name:運行容器 --restartalways:容器退出后重新啟動 --name:自定容器名字 --d:后臺運行容器 --i:交互模式 --t:打開一個…

關于Ubuntu使用筆記

Ubuntu vm tools 安裝 sudo apt install open-vm-tools-desktop 在安裝程序時Ubuntu會將安裝目錄鎖定&#xff0c;安裝結束后會解除鎖定&#xff0c;中斷安裝后無法再安裝其他軟件解決方案 E: Could not get lock /var/lib/dpkg/lock - open (11: Resource temporarily unavail…

具有可執行Tomcat的獨立Web應用程序

在部署應用程序時&#xff0c;簡單性是最大的優勢。 您將了解到&#xff0c;尤其是在項目發展且需要在環境中進行某些更改時。 將整個應用程序打包到一個獨立且自足的JAR中似乎是個好主意&#xff0c;尤其是與在目標環境中安裝和升級Tomcat相比。 過去&#xff0c;我通常將Tomc…

css網頁中設置背景圖片的方法詳解

在css代碼中設置背景圖片的方法&#xff0c;包括背景圖片、背景重復、背景固定、背景定位等 用css設置網頁中的背景圖片&#xff0c;主要有如下幾個屬性&#xff1a; 1&#xff0c;背景顏色 {">說明&#xff1a;參數取值和顏色屬性一樣 注意&#xff1a;在HTML當中&am…

node-sass安裝不成功的問題

SASS_BINARY_SITEhttps://npm.taobao.org/mirrors/node-sass/ npm install node-sass 簡單粗暴的執行上述的命令。轉載于:https://www.cnblogs.com/czaiz/p/6918114.html

npm升級依賴包_Taro跨端開發之依賴管理

昨天跑的好好項目,今天跑不起來我們在開發周期比較長的前端項目的時候,必然會遇到依賴管理的問題. 我們在開發項目的時候,我們用了大量的三方庫.這些三方的依賴庫時不時的會更新自己的代碼.第三方依賴庫的代碼更新會很容易造成代碼運行的不穩定, 比如昨天還跑的好好的項目,另一…

QOTD:Java線程與Java堆空間

以下問題很常見&#xff0c;并且與OutOfMemoryError有關&#xff1a;在JVM線程創建過程和JVM線程容量期間無法創建新的本機線程問題。 這也是我向新技術候選人&#xff08;高級職位&#xff09;提出的典型面試問題。 我建議您在查看答案之前嘗試提供自己的答復。 題&#xff1…

sql查詢重復項

select * from [表A] where id in (select id from [表A] group by id having count(id) >1 )轉載于:https://www.cnblogs.com/wuyujie/p/7885017.html

java util logging_簡單日志記錄,使用java.util.logging

jspservletJavaBean模式下,可以做個簡單的日志記錄,日志文件保存在服務器.(Tomcat)package controller;import java.io.File;import java.io.IOException;import java.util.logging.FileHandler;import java.util.logging.Level;import java.util.logging.Logger;import javax.…