GitLab的安裝、配置、使用

前言

上周去參與“中國數字經濟創新發展大會”了,然后又忙新項目的事情,博客又有一段時間沒有更新,今天周一事情比較少,立刻開始寫文,最近有挺多值得記錄的東西~

進入正文,最近我們搭了個Gitlab,并且把正在開發的項目代碼都遷移到自建的Gitlab上,整個過程還是比較流暢的(就是有點費內存

PS:立即下單給這臺服務器買了四條16G內存組四通道~

在此之前,我們團隊一直使用Gitee企業版作為代碼管理,不過隨著網絡安全和信息安全管控越來越嚴格,加之五月份新政策加緊了對國內開源項目的管控,我們還是決定將代碼放到一個更加可控的平臺上比較好。

在對比了Gitea和Gitlab之后,決定使用Gitlab搭建我們團隊自己的代碼管理系統。

開始

Gitlab有開源免費的社區版,功能夠用,如果后續需要用更多功能還可以換企業版

所以為了方便后續升級,我們選擇使用企業版鏡像,未激活的情況下與社區版無異,需要升級的話只要購買它的訂閱即可平滑升級到企業版。

關于部署方式,云原生時代當然使用Docker~

老規矩,用我最喜歡的compose編排鏡像

找一個空間足夠大的盤,創建gitlab目錄,然后創建docker-compose.yml文件

配置內容如下

version:?"3"
services:gitlab:image:?gitlab/gitlab-ee:latestrestart:?alwayshostname:?gitlabports:-?1100:80-?1101:443-?1102:22volumes:-?/etc/localtime:/etc/localtime-?./config:/etc/gitlab-?./logs:/var/log/gitlab-?./data:/var/opt/gitlab

具體端口映射規則可以自己定義,volume映射也可以改,但記得第一個/etc/localtime是固定的,把本機的時間傳給gitlab鏡像。

保存完在目錄下執行docker-compose up就能跑起來了

首次登錄

Gitlab默認管理員用戶是root

密碼在/etc/gitlab/initial_root_password文件里

可以進入容器內部查看

優化內存使用

Gitlab吃內存真是名不虛傳啊

我們使用的這個服務器是32G內存,在默認配置下一直吃滿內存,甚至在使用過程中經常出現各種5xx錯誤,然后一看剩余內存就幾百M……

果然是內存老虎啊~

然后就嘗試各種配置,經過幾天的摸索,終于把內存占用控制在16G左右

修改配置文件,在Gitlab容器中,這個文件的位置是/etc/gitlab/gitlab.rb

前面我們在docker compose中做了映射,也可以在本機目錄下修改./config/gitlab.rb文件

puma['worker_timeout']?=?30
gitlab_rails['time_zone']?=?'Asia/Shanghai'
puma['worker_processes']?=?2
postgresql['shared_buffers']?=?"256MB"
sidekiq['max_concurrency']?=?8
postgresql['max_worker_processes']?=?4
puma['per_worker_max_memory_mb']?=?600
prometheus_monitoring['enable']?=?false
sidekiq['min_concurrency']?=?8

修改完要進入容器里執行以下命令之一(重新載入配置或重啟gitlab),才能使修改生效

gitlab-ctl?reconfigure
gitlab-ctl?restart

clone地址

剛運行起來,clone地址是這樣的,這不行啊,復制下來沒法直接clone到本地,需要配置一下

691ee973b3e8937d7dd7d66c43538803.png

HTTP的域名配置比較簡單,進入menu->admin->settings->general->Visibility and access controls->Custom Git clone URL for HTTP(S)

填入gitlab的網址和端口號并點擊保存即可生效

不過HTTP需要登錄太麻煩了,我們一般用SSH

SSH地址好像沒法在前臺配置,需要修改配置文件

依然是前面說的那個配置文件,修改這倆行,分別配置IP地址和端口

gitlab_rails['gitlab_ssh_host']?=?'ssh.域名或IP地址'
gitlab_rails['gitlab_shell_ssh_port']?=?1102

重新載入配置就行了~

external_url配置

這個地址的配置涉及到好幾個地方,比如發送的郵件里的跳轉鏈接,代碼片段編輯的跳轉鏈接等~

還是在配置文件里修改

找到這一行,# external_url 'GENERATED_EXTERNAL_URL'

去掉前面的#注釋,把URL改成Gitlab的內網地址http://ip:1100(之前把1100映射到了80端口)

需要注意一點就是Gitlab會根據這里URL的端口來決定提供web服務的端口

所以設置了這個URL的話,要同步修改docker-compose.yml里的端口映射配置

比如這里設置了1100,那么同步docker-compose.yml修改為

ports:-?1100:1100

搞定~

參考資料

  • GitLab部署筆記(Docker):https://www.hash070.top/archives/gitlab-withdocker.html

  • GitLab最新版限制內存大小puma命令:https://blog.csdn.net/m0_46542378/article/details/125344764

  • GitLab修改端口和修改發郵件跳轉地址的前綴:https://www.52jingya.com/aid4087

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

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

相關文章

【BIM入門實戰】Navisworks2018簡體中文安裝教程(附安裝包下載)

Navisworks是Autodesk公司開發的一款三維模型可視化軟件,它以輕量化的運行方式進行BIM成果的后期處理及整合,是一款非常實用的軟件。基于Navisworks,項目的參建方可以在施工前進行模擬施工,以達到減少返工、縮短工期、提供經濟效益的目的。 Navisworks同時支持4D和5D模擬,…

微軟 Windows11 Build 22000.71 更新(KB5004252)發布

微軟推出了一個全新的娛樂小工具。這一部件允許用戶查看 Microsoft Store 中可用的新電影和精選電影。選擇一部電影會引導用戶到 Microsoft Store 查看有關該影片的更多信息。 7 月 16 日消息 今日凌晨,微軟宣布向預覽體驗計劃用戶發布 Windows 11 Build22000.71 更…

Python入門教程之Python保留字符大全

Python中的保留字不能用作常數或變數,或任何其他標識符名稱。所有 Python 的關鍵字只包含小寫字母。 andexecnotassertfinallyorbreakforpassclassfromprintcontinueglobalraisedefifreturndelimporttryelifinwhileelseiswithexceptlambdayield轉載于:https://blog.…

Linux操作系統基礎解析之(五)——grep命令家族及正則表達式初識

grep號稱文本處理三劍客之一,雖然說是三劍客中功能最少也是最簡單的,但仍然不能小覷。 grep的全稱為:Global search REgular expression and Print out the line,即:全面查找正則表達式并將匹配的行顯示出來。 那么這…

Ubuntu16.04換源

Ubuntu16.04換源 轉載于:https://www.cnblogs.com/xielisen/p/6404607.html

【BIM入門實戰】Revit模型導入到第三方軟件方法匯總

本文以案例的方式,匯總展示了Revit模型導入到ArcGIS Pro、3ds max、Navisworks、Lumion、InfraWorks等的方法。 文章目錄 1. Revit導入ArcGIS Pro2. Revit導入3ds Max3. Revit導入Navisworks4. Revit導入Lumion5. Revit導入InfraWorks1. Revit導入ArcGIS Pro ArcGIS Pro2.8可…

Blazor University (37)JavaScript 互操作 —— JavaScript 啟動過程

原文鏈接:https://blazor-university.com/javascript-interop/javascript-boot-process/JavaScript 啟動過程在 Blazor 啟動過程中,瀏覽器將在 Blazor 初始化之前創建 HTML 文檔,這意味著從引導 HTML 引用的任何 JavaScript 都將立即加載&…

git clone出現 fatal: unable to access ‘https://github.com/...‘的解決辦法

錯誤信息: fatal: unable to access https://github.com/JackieZheng/**.git/: OpenSSL SSL_read: Connection was reset, errno 10054 清除代理即可 git config --global --unset http.proxy git config --global --unset https.proxy

時代聚焦AI安全——可解釋性

今年的NIPS多集中在人工智能安全上,此外精彩的部分還有凱特克勞福德關于人工智能公平性問題上被忽視的主題演講、ML安全研討會、以及關于“我們是否需要可解釋性?”可解釋ML討論會辯論。 值校準文件 逆向獎勵設計是為了解決RL代理根據人類設計的代理獎勵…

【BIM入門實戰】渲染器Vray for 3d max 2018圖文安裝教程

VRay是由chaosgroup和asgvis公司出品的一款高質量渲染軟件。VRay是業界最受歡迎的渲染引擎。基于V-Ray 內核開發的有VRay for 3ds max、Maya、Sketchup、Rhino等諸多版本,為不同領域的優秀3D建模軟件提供了高質量的圖片和動畫渲染。方便使用者渲染各種圖片。 Vray for 3d max …

Android--Activity四種啟動模式

launchMode在多個Activity跳轉的過程中扮演著重要的角色,它可以決定是否生成新的Activity實例,是否重用已存在的Activity實例,是否和其他Activity實例公用一個task里。這里簡單介紹一下task的概念,task是一個具有棧結構的對象&…

常用SEO優化之META標簽

之前對meta標簽的理解只有<meta charset"UTF-8">和移動端適口<meta name"viewport" content"widthdevice-width,initial-scale1.0, minimum-scale1.0, maximum-scale1.0, user-scalableno"/> 組成 meta標簽共有兩個屬性&#xff0c…

Hibernate初探

Hibernate對數據庫結構提供了較為完整的封裝&#xff0c;Hibernate的O/R Mapping實現了POJO 和數據庫表之間的映射&#xff0c;以及SQL 的自動生成和執行。程序員往往只需定義好了POJO 到數據庫表的映射關系&#xff0c;即可通過Hibernate 提供的方法完成持久層操作。程序員甚至…

【BIM入門實戰】InfraWorks2018圖文安裝教程

Autodesk InfraWorks是易于使用的草圖繪制工具,適用于土地規劃師和基礎設施設計師。AutodeskInfraWorks可以生成可視化的高級模型,而無需借助輔助,可以獨立進行建模的BIM可視化軟件。 InfraWorks2018軟件預覽: 雙擊安裝包進行安裝。 自解壓中,等待即可。 點擊【安裝】。 點…

weblogic清除緩存

清除/weblogic/Oracle/Middleware/user_projects/domains/base_domain/servers/AdminServer/cache/下的文件 &#xff1a; [rootlocalhost Middleware]# mv /weblogic/Oracle/Middleware/user_projects/domains/base_domain/servers/AdminServer/cache/* /opt/20171208/ 清除/w…

有點酷,使用 .NET MAUI 探索太空

設計 我準備用 .NET Maui 實現一個非常有意思的 "前往太空" 的程序。第一步&#xff0c;需要圖片素材&#xff0c;我使用了 Aan Ragil 的一組非常棒的 Dribbble 素材圖片。當然&#xff0c;你也可以在最下面的鏈接進行下載。實現 這個應用程序的完整源代碼可以在 G…

CSS3 動畫插件 aos.js

aos.js是一款效果超贊的頁面滾動元素動畫jQuery動畫庫插件。該動畫庫可以在頁面滾動時提供28種不同的元素動畫效果&#xff0c;以及多種easing效果。在頁面往回滾動時&#xff0c;元素會恢復到原來的狀態。 安裝 yarn add aosnext或者 npm install --save aosnextimport AOS …

nginx匯總(z)

Nginx相關文章Nginx基礎1. nginx安裝2. nginx 編譯參數詳解3. nginx安裝配置清緩存模塊安裝4. nginxPHP 5.55. nginx配置虛擬主機6. nginx location配置7. nginx root&alias文件路徑配置8. ngx_http_core_module模塊提供的變量9. nginx日志配置10. apache和nginx支…

實例講解——系統登錄

一&#xff0c;程序分析 首先使用參數的方式輸入用戶名和密碼&#xff0c;所以&#xff0c;首先要判斷輸入參數的個數是否合法&#xff0c;如果不合法&#xff0c;則必須提示程序執行不對&#xff0c;并退出。 如果正確輸入&#xff0c;則可以進行密碼和用戶名的驗證&#xff0…

【Microsoft Office】Word 2019空格下劃線不顯示的解決辦法

解決辦法&#xff1a;點擊【文件】→【選項】→【高級】選項卡→勾選【為尾部空格添加下劃線(U)】&#xff0c;解決&#xff01;