Docker快速部署GitLab的详细指南

 更新时间:2025年09月23日 08:57:25   作者:东方佑  
在 Windows 上使用 Docker 部署 GitLab 是完全可行的,推荐使用 Docker Desktop for Windows 来运行 GitLab 容器,下面小编就来详细介绍一下吧

Windows 上使用 Docker 部署 GitLab 是完全可行的,推荐使用 Docker Desktop for Windows 来运行 GitLab 容器。以下是详细的本地部署步骤。

前提条件

确保你已安装以下工具:

1.Windows 10 或 Windows 11(64位)

2.Docker Desktop for Windows

启用 WSL2(Windows Subsystem for Linux),Docker Desktop 会自动处理

3.至少 4GB 可用内存(建议 8GB+,GitLab 较吃资源)

提示:GitLab 社区版(CE)启动后可能占用 2~3GB 内存,请确保系统资源充足。

步骤一:安装并启动 Docker Desktop

1.下载并安装 Docker Desktop for Windows

2.安装过程中勾选:

  • Enable WSL2 Features
  • Install required Windows components

3.安装完成后重启,打开 Docker Desktop

4.确保状态显示 “Docker Desktop is running”

步骤二:创建 GitLab 目录结构

选择一个位置,比如 D:\gitlab,创建以下目录:

D:\gitlab
├── config
├── data
└── logs

你可以手动创建,或在 PowerShell 中执行:

mkdir D:\gitlab\config
mkdir D:\gitlab\data
mkdir D:\gitlab\logs

步骤三:编写docker-compose.yml

D:\gitlab 下新建文件 docker-compose.yml,内容如下:

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 设置为 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 使用无横杠命令)

打开网址设置密码

http://localhost:8989

1. 进入 GitLab 容器的 Rails 控制台

docker exec -it gitlab gitlab-rails console

2. 在控制台中执行(替换 ‘new_password’ 为你想设的新密码)

user = User.where(id: 1).first
user.password = 'new_password'
user.password_confirmation = 'new_password'
user.save!

3. 退出控制台

exit

到此这篇关于Docker快速部署GitLab的详细指南的文章就介绍到这了,更多相关Docker部署GitLab内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • Springboot打包docker的多种方法实现

    Springboot打包docker的多种方法实现

    本文介绍了SpringBoot项目打包为Docker镜像的多种方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2025-12-12
  • 基于 Docker 和 Flask 构建高并发微服务架构的实现

    基于 Docker 和 Flask 构建高并发微服务架构的实现

    本文主要介绍了基于 Docker 和 Flask 构建高并发微服务架构,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2025-03-03
  • jenkins+gitlab+nginx部署前端应用实现

    jenkins+gitlab+nginx部署前端应用实现

    在日常开发中,往往可能同时多个项目并行进行开发,本文介绍了jenkins+gitlab+nginx部署前端应用实现,感兴趣的可以了解一下
    2021-05-05
  • docker如何修改容器ip范围

    docker如何修改容器ip范围

    这篇文章主要介绍了docker如何修改容器ip范围问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-03-03
  • Docker上实现Redis集群搭建

    Docker上实现Redis集群搭建

    redis集群对于很多人来说非常熟悉,虽然集群搭建的文章在网上很多,但是今天给大家介绍的是在docker上实现Redis集群搭建,感兴趣的可以了解下
    2021-05-05
  • docker简单部署Django项目实例

    docker简单部署Django项目实例

    使用Docker部署Django项目需配置Nginx和uWSGI,注意端口冲突并禁用宿主机原有服务,通过自定义bridge网络实现容器间通信,挂载静态文件目录,利用脚本简化部署流程,确保容器与宿主机网络隔离且可互相访问
    2025-09-09
  • Docker容器搭建android编译环境的实践记录

    Docker容器搭建android编译环境的实践记录

    这篇文章主要介绍了Docker容器搭建android编译环境的实践记录,主要包括部署容器、镜像管理、容器管理等相关知识,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2022-07-07
  • Docker容器自启动的实现方法

    Docker容器自启动的实现方法

    这篇文章主要介绍了Docker容器自启动的实现方法,详细的介绍了Docker的 Restart policy命令,非常具有实用价值,需要的朋友可以参考下
    2018-09-09
  • docker中的python代码打印失效的解决

    docker中的python代码打印失效的解决

    这篇文章主要介绍了docker中的python代码打印失效的解决,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2024-07-07
  • Docker 解决容器时间与主机时间不一致的问题三种解决方案

    Docker 解决容器时间与主机时间不一致的问题三种解决方案

    这篇文章主要介绍了Docker 解决容器时间与主机时间不一致的问题的相关资料,这里提供了三种方法,供大家参考,需要的朋友可以参考下
    2016-12-12

最新评论