温馨提示×

GitLab在Debian上的容器化部署

小樊
35
2026-01-05 18:34:32
栏目: 智能运维

在Debian上部署GitLab的容器化版本(使用Docker)是一个相对简单的过程。以下是详细的步骤:

前提条件

  1. Debian系统:确保你已经安装了一个Debian系统(例如Debian 10或更高版本)。
  2. Docker:确保Docker已经安装在你的系统上。如果没有安装,可以使用以下命令安装:
    sudo apt update
    sudo apt install docker.io
    
  3. Docker Compose(可选):虽然可以使用Docker命令行来部署GitLab,但使用Docker Compose可以更方便地管理多个容器。你可以使用以下命令安装Docker Compose:
    sudo curl -L "https://github.com/docker/compose/releases/download/1.29.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
    sudo chmod +x /usr/local/bin/docker-compose
    

部署GitLab

方法一:使用Docker命令行

  1. 创建GitLab配置文件: 创建一个名为gitlab.rb的文件,用于配置GitLab。你可以根据需要修改这个文件。

    sudo nano /etc/gitlab/gitlab.rb
    

    在文件中添加以下内容(根据你的需求进行调整):

    external_url 'http://your-gitlab-domain.com'
    gitlab_rails['lfs_enabled'] = true
    gitlab_rails['gitlab_shell_ssh_port'] = 2222
    
  2. 配置Docker: 确保Docker配置允许GitLab使用外部URL。编辑/etc/docker/daemon.json文件:

    sudo nano /etc/docker/daemon.json
    

    添加以下内容:

    {
      "insecure-registries" : ["your-gitlab-domain.com:5000"]
    }
    

    然后重启Docker服务:

    sudo systemctl restart docker
    
  3. 安装GitLab: 使用GitLab官方提供的Docker镜像来安装GitLab。创建一个名为gitlab.yml的文件:

    sudo nano /etc/gitlab/gitlab.yml
    

    添加以下内容:

    image: 'gitlab/gitlab-ce:latest'
    restart: always
    hostname: 'your-gitlab-domain.com'
    external_url: 'http://your-gitlab-domain.com'
    gitlab_rails['lfs_enabled'] = true
    gitlab_rails['gitlab_shell_ssh_port'] = 2222
    

    然后运行以下命令来安装GitLab:

    sudo gitlab-ctl reconfigure
    

方法二:使用Docker Compose

  1. 创建Docker Compose文件: 创建一个名为docker-compose.yml的文件:

    sudo nano /etc/gitlab/docker-compose.yml
    

    添加以下内容:

    version: '3.7'
    
    services:
      gitlab:
        image: 'gitlab/gitlab-ce:latest'
        restart: always
        hostname: 'your-gitlab-domain.com'
        external_url: 'http://your-gitlab-domain.com'
        gitlab_rails['lfs_enabled'] = true
        gitlab_rails['gitlab_shell_ssh_port'] = 2222
        ports:
          - '80:80'
          - '443:443'
          - '22:22'
        volumes:
          - '/srv/gitlab/config:/etc/gitlab'
          - '/srv/gitlab/logs:/var/log/gitlab'
          - '/srv/gitlab/data:/var/opt/gitlab'
    
  2. 启动GitLab: 运行以下命令来启动GitLab:

    sudo gitlab-ctl up -d
    

验证部署

  1. 访问GitLab: 打开浏览器,访问http://your-gitlab-domain.com,你应该能够看到GitLab的登录页面。

  2. 登录GitLab: 默认情况下,GitLab的初始管理员用户名是root,密码是你设置的外部URL中的密码(例如http://your-gitlab-domain.com)。

后续配置

  • SSL证书:为了安全起见,建议为GitLab配置SSL证书。你可以使用Let’s Encrypt来获取免费的SSL证书。
  • 备份:定期备份GitLab的数据以防止数据丢失。

通过以上步骤,你应该能够在Debian上成功部署GitLab的容器化版本。

0