centos

CentOS中GitLab的容器化部署

小樊
37
2025-03-27 15:58:46
栏目: 智能运维

在CentOS中通过Docker容器化部署GitLab是一个相对简单且高效的方法。以下是详细的步骤:

准备工作

  1. 安装Docker: 确保你的CentOS系统上已经安装了Docker。如果没有安装,可以参考Docker官方文档进行安装。

  2. 拉取GitLab镜像: 使用以下命令从Docker Hub拉取最新版本的GitLab镜像:

    docker pull gitlab/gitlab-ce
    

部署步骤

  1. 创建目录: 创建用于存储GitLab配置文件、日志和数据文件的目录:

    mkdir -p /data/gitlab/{config,logs,data}
    
  2. 运行GitLab容器: 使用以下命令启动GitLab容器,并将容器内的目录映射到宿主机:

    docker run -d \
      --hostname gitlab.example.com \
      -p 443:443 \
      -p 80:80 \
      -p 22:22 \
      --name gitlab \
      --restart always \
      -v /data/gitlab/config:/etc/gitlab \
      -v /data/gitlab/logs:/var/log/gitlab \
      -v /data/gitlab/data:/var/opt/gitlab \
      gitlab/gitlab-ce:latest
    

    命令参数解释:

    • -d:以守护进程模式运行容器。
    • --hostname:设置容器的主机名。
    • -p:将容器端口映射到宿主机端口。
    • --name:设置容器名称。
    • --restart always:容器退出时总是重启。
    • -v:将容器内路径映射到宿主机路径。
  3. 访问GitLab: 打开浏览器,访问 http://<your-server-ip>:80,使用root账户登录并设置密码。

基本配置调整

  1. 更改SSH端口: 如果需要更改SSH端口,可以在启动容器时添加 --publish 参数,例如:

    docker run -d \
      --hostname gitlab.example.com \
      -p 443:443 \
      -p 80:80 \
      -p 2222:22 \
      --name gitlab \
      --restart always \
      -v /data/gitlab/config:/etc/gitlab \
      -v /data/gitlab/logs:/var/log/gitlab \
      -v /data/gitlab/data:/var/opt/gitlab \
      gitlab/gitlab-ce:latest
    
  2. 禁用注册功能: 编辑 /etc/gitlab/gitlab.rb 文件,找到以下行并注释掉:

    gitlab_rails['register_email_notification'] = false
    

    然后重载配置:

    docker exec -t gitlab gitlab-ctl reconfigure
    
  3. 配置发件邮箱: 在 /etc/gitlab/gitlab.rb 文件中添加以下配置信息:

    gitlab_rails['smtp_enable'] = true
    gitlab_rails['smtp_address'] = "smtp.example.com"
    gitlab_rails['smtp_port'] = 587
    gitlab_rails['smtp_user_name'] = "your-email@example.com"
    gitlab_rails['smtp_password'] = "your-password"
    gitlab_rails['smtp_authentication'] = "login"
    gitlab_rails['smtp_enable_starttls_auto'] = true
    gitlab_rails['smtp_tls'] = false
    gitlab_rails['gitlab_email_from'] = "your-email@example.com"
    

    然后重载配置:

    docker exec -t gitlab gitlab-ctl reconfigure
    

参考资料

通过以上步骤,你可以在CentOS上成功部署GitLab,并进行基本的配置调整。希望这些信息对你有所帮助!

0
看了该问题的人还看了