Docker快速部署GitLab的詳細指南
在 Windows 上使用 Docker 部署 GitLab 是完全可行的,推薦使用 Docker Desktop for Windows 來運行 GitLab 容器。以下是詳細的本地部署步驟。
前提條件
確保你已安裝以下工具:
1.Windows 10 或 Windows 11(64位)
啟用 WSL2(Windows Subsystem for Linux),Docker Desktop 會自動處理
3.至少 4GB 可用內(nèi)存(建議 8GB+,GitLab 較吃資源)
提示:GitLab 社區(qū)版(CE)啟動后可能占用 2~3GB 內(nèi)存,請確保系統(tǒng)資源充足。
步驟一:安裝并啟動 Docker Desktop
1.下載并安裝 Docker Desktop for Windows
2.安裝過程中勾選:
- Enable WSL2 Features
- Install required Windows components
3.安裝完成后重啟,打開 Docker Desktop
4.確保狀態(tài)顯示 “Docker Desktop is running”
步驟二:創(chuàng)建 GitLab 目錄結(jié)構(gòu)
選擇一個位置,比如 D:\gitlab,創(chuàng)建以下目錄:
D:\gitlab
├── config
├── data
└── logs
你可以手動創(chuàng)建,或在 PowerShell 中執(zhí)行:
mkdir D:\gitlab\config mkdir D:\gitlab\data mkdir D:\gitlab\logs
步驟三:編寫docker-compose.yml
在 D:\gitlab 下新建文件 docker-compose.yml,內(nèi)容如下:
version: '3.6'
services:
gitlab:
image: gitlab/gitlab-ce:latest
container_name: gitlab
restart: always
hostname: localhost
environment:
GITLAB_OMNIBUS_CONFIG: |
external_url 'http://localhost:8989'
nginx['listen_port'] = 8989
nginx['listen_https'] = false
gitlab_rails['time_zone'] = 'Asia/Shanghai'
# 如果需要郵件通知可配置 SMTP(可選)
ports:
- "8989:8989"
- "2222:22"
volumes:
- D:/gitlab/config:/etc/gitlab
- D:/gitlab/data:/var/opt/gitlab
- D:/gitlab/logs:/var/log/gitlab
shm_size: '256m'
注意:
- 使用
D:/gitlab而不是\(Docker 兼容 POSIX 路徑) external_url設(shè)置為http://localhost:8989,這樣可以從本機瀏覽器訪問- SSH 映射到宿主機的
2222端口,避免與 OpenSSH 沖突
步驟四:啟動 GitLab
使用 PowerShell + Docker Compose
進入目錄并啟動:
cd D:\gitlab docker-compose up -d
如果提示 'docker-compose' 不是命令,請確認 Docker Desktop 已安裝完整組件。
或者直接使用:docker compose up -d(新版 Docker 使用無橫杠命令)
打開網(wǎng)址設(shè)置密碼
http://localhost:8989
1. 進入 GitLab 容器的 Rails 控制臺
docker exec -it gitlab gitlab-rails console
2. 在控制臺中執(zhí)行(替換 ‘new_password’ 為你想設(shè)的新密碼)
user = User.where(id: 1).first user.password = 'new_password' user.password_confirmation = 'new_password' user.save!
3. 退出控制臺
exit
到此這篇關(guān)于Docker快速部署GitLab的詳細指南的文章就介紹到這了,更多相關(guān)Docker部署GitLab內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Springboot打包docker的多種方法實現(xiàn)
本文介紹了SpringBoot項目打包為Docker鏡像的多種方法,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2025-12-12
基于?Docker?和?Flask?構(gòu)建高并發(fā)微服務(wù)架構(gòu)的實現(xiàn)
本文主要介紹了基于?Docker?和?Flask?構(gòu)建高并發(fā)微服務(wù)架構(gòu),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2025-03-03
jenkins+gitlab+nginx部署前端應(yīng)用實現(xiàn)
在日常開發(fā)中,往往可能同時多個項目并行進行開發(fā),本文介紹了jenkins+gitlab+nginx部署前端應(yīng)用實現(xiàn),感興趣的可以了解一下2021-05-05
Docker容器搭建android編譯環(huán)境的實踐記錄
這篇文章主要介紹了Docker容器搭建android編譯環(huán)境的實踐記錄,主要包括部署容器、鏡像管理、容器管理等相關(guān)知識,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下2022-07-07
Docker 解決容器時間與主機時間不一致的問題三種解決方案
這篇文章主要介紹了Docker 解決容器時間與主機時間不一致的問題的相關(guān)資料,這里提供了三種方法,供大家參考,需要的朋友可以參考下2016-12-12

