使用Docker Desktop部署GitLab

1. 環境準備

  • 確保Windows 10/11系統支持虛擬化技術(需在BIOS中開啟Intel VT-x/AMD-V)
  • 內存建議≥8GB,存儲空間≥100GB

2. 安裝Docker Desktop

  • 訪問Docker官網下載安裝包
  • 安裝時勾選"Use WSL 2 instead of Hyper-V"(推薦)
  • 安裝完成后啟動Docker,在設置中確保使用Linux容器模式

3. 下載Gitlab鏡像

3.1 配置加速

國內從Docker Hub拉取鏡像常因網絡問題受阻,可配置國內云服務商提供的鏡像加速器提升下載速度。

3.1.1 國內加速地址

https://dockerproxy.com第三方代理
http://hub-mirror.c.163.com網易云鏡像
https://docker.mirrors.sjtug.sjtu.edu.cn上海交大鏡像
https://docker.m.daocloud.ioDaoCloud鏡像
https://docker.nju.edu.cn南京大學鏡像
https://mirror.baidubce.com百度云鏡像(需登錄控制臺)
https://ccr.ccs.tencentyun.com騰訊云鏡像(需登錄控制臺)
https://<your_code>.mirror.aliyuncs.com阿里云鏡像站(需登錄?控制臺)

3.1.2 配置JSON

系統右下角托盤圖標內右鍵菜單選擇 Settings,打開配置窗口后左側導航菜單選擇 Docker Daemon。編輯窗口內的JSON串,填寫下方加速器地址:

{"builder": {"gc": {"defaultKeepStorage": "20GB","enabled": true}},"experimental": false,/* 鏡像加速器列表 */"registry-mirrors": ["https://dockerproxy.com","http://hub-mirror.c.163.com","https://docker.mirrors.sjtug.sjtu.edu.cn","https://docker.m.daocloud.io","https://docker.nju.edu.cn"]
}

docker info 命令確認是否設置成功

3.2?拉取鏡像

搜索框搜索"Gitlab”,點擊Pull 拉取鏡像 (可能會因為網絡問題搜不到,可以直接用命令拉取)

Apple Silicon 選擇:?yrzr/gitlab-ce-arm64v8

拉取成功:

3.3?GitLab鏡像的區別和用途

alpinelinux/gitlab基于Alpine Linux的GitLab鏡像,Alpine Linux是一個輕量級的Linux發行版,通常用于需要最小化鏡像大小的場景。 適用于需要輕量級GitLab實例的環境。
okteto/gitlabOkteto是一個用于開發Kubernetes應用的平臺,這個鏡像可能是為了在Kubernetes環境中部署GitLab而優化的。適用于需要在Kubernetes上部署GitLab的開發人員。
vulhub/gitlabVulhub是一個提供漏洞環境的開源項目,這個鏡像可能包含了一些已知漏洞的GitLab版本,用于安全研究或滲透測試。適用于安全研究人員或滲透測試人員。
gitlab/gitlab-runnerGitLab Runner是一個開源項目,用于運行GitLab CI/CD管道中的作業。 適用于需要執行CI/CD任務的環境。
gitlab/gitlab-ceGitLab的社區版,是免費的開源版本,包含了GitLab的核心功能。適用于大多數需要GitLab功能的用戶。
gitlab/gitlab-runner-helper這個鏡像可能是為了輔助GitLab Runner的運行而設計的,提供了一些額外的工具或腳本。 適用于需要GitLab Runner高級功能的用戶。
mcp/gitlab這個鏡像可能由某個特定的組織或項目維護,用于特定的部署或配置需求。適用于需要特定配置或定制的GitLab實例。
gitlab/gitlab-eeGitLab的企業版,包含了額外的企業級功能,如高級安全、合規性和支持。適用于需要高級功能和企業級支持的大型組織。

3.2 命令行拉取

docker pull gitlab/gitlab-ce:17.9.0-ce.0

4. 容器配置

4.1 Optional settings(可選設置)

  • Container name(容器名稱):可以填寫一個有意義的名稱,以便于識別和管理。如果不填寫,Docker 會自動生成一個隨機名稱。

4.2 Ports(端口)

  • Host port(主機端口):這些端口用于將容器內部的服務映射到主機上,使得可以從主機訪問容器內部的服務。

    • 22/tcp:通常用于 SSH 訪問。如果你不需要通過 SSH 訪問 GitLab,可以不映射這個端口,或者映射到一個不常用的端口上。

    • 443/tcp:通常用于 HTTPS 訪問。建議映射到主機的 443 端口,這樣可以通過 https://localhost 訪問 GitLab。

    • 80/tcp:通常用于 HTTP 訪問。建議映射到主機的 80 端口,這樣可以通過 http://localhost 訪問 GitLab。

4.3 Volumes(卷)

  • Host path(主機路徑):指定主機上的一個目錄,用于存儲 GitLab 的數據和配置。

  • Container path:指定容器內部的路徑,通常是 /var/opt/gitlab,這是 GitLab 默認的數據和配置存儲路徑。

4.4 Environment variables(環境變量)

  • Variable(變量):可以設置一些環境變量來配置 GitLab 的行為,例如:

    • GITLAB_OMNIBUS_CONFIG:用于設置 GitLab 的配置,可以是一個包含配置的 YAML 字符串。

    • GITLAB_ROOT_PASSWORD:設置 GitLab 的初始管理員密碼。

4.5 示例配置

假設你希望將 GitLab 的數據存儲在主機的 C:\gitlab-data 目錄下,并且希望使用默認的 80 和 443 端口訪問 GitLab,配置如下:(輸入0自動配置端口)

  • Container namemy-gitlab

  • Ports

    • Host port80Container port80

    • Host port443Container port443

  • Volumes

    • Host pathC:\gitlab-dataContainer path/var/opt/gitlab

  • Environment variables

    • VariableGITLAB_ROOT_PASSWORDValueyour_password

填寫完畢后,點擊 Run 按鈕啟動容器。等待初始化完成即可使用。

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

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

相關文章

【復習】Java集合

集合概念 集合與數組 數組是固定長度&#xff1b;集合是動態長度的數據結構&#xff0c;需要動態增加或刪除元素 數組可以包含基本數據類型和對象&#xff1b;集合只能包含對象 數組可以直接訪問元素&#xff1b;集合需要通過迭代器訪問元素 線程安全的集合&#xff1f; …

vue3 文件類型傳Form Data數據格式給后端

在 Vue 3 中&#xff0c;如果你想將文件&#xff08;例如上傳的 Excel 文件&#xff09;以 FormData 格式發送到后端&#xff0c;可以通過以下步驟實現。這種方式通常用于處理文件上傳&#xff0c;因為它可以將文件和其他數據一起發送到服務器。 首先&#xff0c;創建一個 Vue…

使用 INFINI Console 配置集群監控 Webhook 通知指南

在集群管理中&#xff0c;監控關鍵指標如CPU、內存、磁盤、JVM等是至關重要的。對于Easysearch及ES生態系統&#xff0c;還需要關注集群本身的指標&#xff0c;例如搜索延遲、集群狀態、節點移除等。INFINI Console不僅提供了默認的監控指標&#xff0c;還支持用戶自定義監控項…

WPF的頁面設計和實用功能實現

目錄 一、TextBlock和TextBox 1. 在TextBlock中實時顯示當前時間 二、ListView 1.ListView顯示數據 三、ComboBox 1. ComboBox和CheckBox組合實現下拉框多選 四、Button 1. 設計Button按鈕的邊框為圓角&#xff0c;并對指針懸停時的顏色進行設置 一、TextBlock和TextBox…

二級公共基礎之數據結構與算法篇(八)排序技術

目錄 前言 一、交換類排序 1.冒泡排序法 1. 冒泡排序的思想 2. 冒泡排序的實現步驟 3. 示例 4. 冒泡排序的特點 2.快速排序 1. 快速排序的核心思想 2. 快速排序的實現步驟 3. 示例代碼(C語言) 4. 快速排序的特點 二、插入類排序 1. 簡單插入排序 1.簡單插入排…

記錄一次 ALG 的處理過程

前幾天朋友找我幫忙&#xff0c;說碰到很大困難了&#xff0c;實際上&#xff0c;不過如此 現象是這樣的&#xff1a; FreeSWITCH mod_unimrcp 工作不正常 FS 和 mrcp-server 兩邊同時抓包&#xff0c;看到的是&#xff1a; sip 流程正常 FS TCP 連接到 mccp-server 失敗&…

【Linux網絡編程】IP協議格式,解包步驟

目錄 解析步驟 1.版本字段&#xff08;大小&#xff1a;4比特位&#xff09; 2.首部長度&#xff08;大小&#xff1a;4比特位&#xff09;&#xff08;單位&#xff1a;4字節&#xff09; &#x1f35c;細節解釋&#xff1a; 3.服務類型&#xff08;大小&#xff1a;8比特…

CSDN文章質量分查詢系統【贈python爬蟲、提分攻略】

CSDN文章質量分查詢系統 https://www.csdn.net/qc 點擊鏈接-----> CSDN文章質量分查詢系統 <------點擊鏈接 點擊鏈接-----> https://www.csdn.net/qc <------點擊鏈接 點擊鏈接-----> CSDN文章質量分查詢系統 <------點擊鏈接 點擊鏈…

HTML應用指南:利用GET請求獲取全國瀘溪河門店位置信息

隨著新零售業態的快速發展,門店位置信息的獲取變得越來越重要。作為新興烘焙品牌之一,瀘溪河自2013年在南京創立以來,一直堅持“健康美味,香飄世界”的企業使命,以匠人精神打造新中式糕點。為了更好地理解和利用這些數據,本篇文章將深入探討GET請求的實際應用,并展示如何…

如何在 React 中測試高階組件?

在 React 中測試高階組件可以采用多種策略&#xff0c;以下是常見的測試方法&#xff1a; 1. 測試高階組件返回的組件 高階組件本身是一個函數&#xff0c;它返回一個新的組件。因此&#xff0c;可以通過測試這個返回的組件來間接測試高階組件的功能。通常使用 Jest 作為測試…

R語言Stan貝葉斯空間條件自回歸CAR模型分析死亡率多維度數據可視化

全文鏈接&#xff1a;https://tecdat.cn/?p40424 在空間數據分析領域&#xff0c;準確的模型和有效的工具對于研究人員至關重要。本文為區域數據的貝葉斯模型分析提供了一套完整的工作流程&#xff0c;基于Stan這一先進的貝葉斯建模平臺構建&#xff0c;幫助客戶為空間分析帶來…

Casbin 權限管理介紹及在 Go 語言中的使用入門

引言 在現代軟件開發過程中&#xff0c;權限管理是一個至關重要的環節&#xff0c;它關系到系統的安全性和用戶體驗。Casbin 是一個強大的訪問控制庫&#xff0c;支持多種訪問控制模型&#xff0c;如 ACL&#xff08;訪問控制列表&#xff09;、RBAC&#xff08;基于角色的訪問…

快速入門——第三方組件element-ui

學習自嗶哩嗶哩上的“劉老師教編程”&#xff0c;具體學習的網站為&#xff1a;10.第三方組件element-ui_嗶哩嗶哩_bilibili&#xff0c;以下是看課后做的筆記&#xff0c;僅供參考。 第一節 組件間的傳值 組件可以有內部Data提供數據&#xff0c;也可由父組件通過prop方式傳…

【算法通關村 Day7】遞歸與二叉樹遍歷

遞歸與二叉樹遍歷青銅挑戰 理解遞歸 遞歸算法是指一個方法在其執行過程中調用自身。它通常用于將一個問題分解為更小的子問題&#xff0c;通過重復調用相同的方法來解決這些子問題&#xff0c;直到達到基準情況&#xff08;終止條件&#xff09;。 遞歸算法通常包括兩個主要…

樸素貝葉斯法

文章目錄 貝葉斯定理樸素貝葉斯法的學習與分類條件獨立假設樸素貝葉斯的后驗概率最大化準則樸素貝葉斯的基本公式 樸素貝葉斯法的參數估計極大似然估計 貝葉斯定理 前置知識&#xff1a;條件概率、全概率、貝葉斯公式 推薦視頻&#xff0c;看完視頻后搜索博客了解先驗概率、后…

《A++ 敏捷開發》- 20 從 AI 到最佳設計

“我們現在推行AIGC&#xff0c;服務端不需要UI交互設計的用AI自動產出代碼&#xff0c;你建議的結對編程、TDD等是否還適用&#xff1f;” 這兩年AI確實很火&#xff0c;是報紙、雜志的熱門話題。例如&#xff0c;HBR雜志從2024年9月至2025年二月份3期&#xff0c;里面有接近一…

GO系列-IO 文件操作

os io 判斷文件是否存在 func fileExist(filePath string) (bool, error) {_, err : os.Stat(filePath)if err nil {return true, nil}if os.IsNotExist(err) {return false, nil}return false, &CheckFileExistError{filePath} } 讀取文件內容 func readFileContext(…

rs485協議、電路詳解(保姆級)

起源 RS-485即Recommended Standard 485 協議的簡寫。1983年被電子工業協會(EIA)批準為一種通訊接口標準. 數據在通信雙方之間傳輸&#xff0c;本質是傳輸物理的電平&#xff0c;比方說傳輸5V的電壓 -1V的電壓信號&#xff0c;這些物理信號在傳輸過程中會受到很多干擾&#x…

JavaWeb-Tomcat服務器

文章目錄 Web服務器存在的意義關于Web服務器軟件Tomcat服務器簡介安裝Tomcat服務器Tomcat服務器源文件解析配置Tomcat的環境變量啟動Tomcat服務器一個最簡單的webapp(不涉及Java) Web服務器存在的意義 我們之前介紹過Web服務器進行通信的原理, 但是我們當時忘記了一點, 服務器…

【愚公系列】《Python網絡爬蟲從入門到精通》008-正則表達式基礎

標題詳情作者簡介愚公搬代碼頭銜華為云特約編輯,華為云云享專家,華為開發者專家,華為產品云測專家,CSDN博客專家,CSDN商業化專家,阿里云專家博主,阿里云簽約作者,騰訊云優秀博主,騰訊云內容共創官,掘金優秀博主,亞馬遜技領云博主,51CTO博客專家等。近期榮譽2022年度…