gitlab私有化部署

以下是整理好的Markdown格式文档,详细描述了从下载镜像、启动镜像、修改external_url以及设置或重置root密码的步骤。

GitLab 安装与配置指南

本文档将指导您完成GitLab的安装和基本配置过程,包括下载镜像、启动容器、修改外部访问URL(external_url)及设置或重置管理员(root)密码。

一、下载GitLab镜像

首先需要确保您的系统中已经安装了Docker。然后执行以下命令来下载GitLab官方镜像:

bash 复制代码
docker pull gitlab/gitlab-ce:latest

**

二、启动GitLab容器

**

使用如下命令启动GitLab容器,并根据实际需求调整参数(如端口映射等):

bash 复制代码
docker run --detach \
  --hostname 192.168.0.3 \
  --publish 443:443 --publish 80:80 --publish 2222:22 \  # 注意这里SSH端口被映射到了2222,避免与主机上默认SSH服务冲突
  --name gitlab \
  --restart always \
  --volume /srv/gitlab/config:/etc/gitlab \
  --volume /srv/gitlab/logs:/var/log/gitlab \
  --volume /srv/gitlab/data:/var/opt/gitlab \
  gitlab/gitlab-ce:latest

处理端口冲突

如果遇到端口已被占用的情况,请修改对应的端口号(例如将--publish 22:22改为--publish 2222:22),以避免冲突。

三、修改external_url

首次启动后,可能需要根据实际情况修改GitLab实例的访问地址。编辑/etc/gitlab/gitlab.rb文件中的external_url字段:

bash 复制代码
docker exec -it gitlab vi /etc/gitlab/gitlab.rb

找到并修改如下行:

ruby 复制代码
external_url 'http://192.168.0.3'

保存退出后,重新配置GitLab使更改生效:

ruby 复制代码
docker exec -it gitlab gitlab-ctl reconfigure

四、设置或重置管理员(root)密码

设置初始密码

首次访问GitLab时,系统会提示你为root用户设置一个新密码。请按照页面指示操作完成设置。

重置忘记的密码

若已设置过但忘记了密码,可以通过以下命令进入GitLab Rails控制台重置密码:

bash 复制代码
 docker exec -it gitlab gitlab-rails console

在控制台中执行:

bash 复制代码
user = User.find_by(username: 'root')
user.password = 'new_password'   # 替换为您想要的新密码
user.password_confirmation = 'new_password'
user.save!

完成后输入exit退出控制台。

通过以上步骤,您可以成功部署GitLab实例,并根据自己的需求进行相应的配置。

相关推荐
爱宇阳3 天前
GitLab CI/CD 集成 Harbor 全面教程
ci/cd·gitlab·harbor
雪碧聊技术3 天前
gitLab如何新建分支(根据某个分支)
gitlab·new branch·新建分支
字节逆旅3 天前
如何解决代码冲突
gitlab
林晓lx3 天前
使用Git钩子+ husky + lint语法检查提高前端项目代码质量
前端·git·gitlab·源代码管理
爱宇阳4 天前
从容器化到自动化:Vue3 项目 Docker 部署与 GitLab CI/CD 集成 Harbor 全流程
docker·自动化·gitlab
爱宇阳4 天前
Spring Boot 项目 GitLab CI/CD 自动构建并推送到 Harbor 教程
spring boot·ci/cd·gitlab
爱宇阳4 天前
Vue3 项目 GitLab CI/CD 自动构建并推送到 Harbor 教程
ci/cd·gitlab
西部森林牧歌5 天前
Arbess零基础学习 - 使用Arbess+GitLab实现Node.js项目自动化构建/主机部署
ci/cd·node.js·gitlab·arbess·tiklab devops
极小狐5 天前
极狐GitLab 18.5 正式发布,更新 Maven 虚拟仓库 UI(Beta)、全新个人主页、实例级合规与安全策略管理 以及 DAST 认证脚本 等
java·gitlab·maven
维尔切7 天前
GitLab 版本控制系统
gitlab