Docker 搭建GitLab

拉取镜像

cpp 复制代码
docker pull gitlab/gitlab-ce

GitLab 需要持久存储来保存数据,如仓库数据、配置

cpp 复制代码
mkdir -p /opt/gitlab/config /opt/gitlab/logs /opt/gitlab/data

使用 docker run 命令来启动 GitLab 容器

cpp 复制代码
docker run -itd \
  --hostname 192.168.111.128 \
  --publish 443:443 \
  --publish 80:80 \
  --publish 2222:22 \
  --name gitlab \
  --restart always \
  --volume /opt/gitlab/config:/etc/gitlab \
  --volume /opt/gitlab/logs:/var/log/gitlab \
  --volume /opt/gitlab/data:/var/opt/gitlab \
  gitlab/gitlab-ce:latest

解释命令参数说明:

--detach: 让容器在后台运行(-itd 是 -it -d 的结合,--detach = -d)。

--hostname your-gitlab-hostname: 替换为你的 GitLab 主机名或域名。

--publish 443:443 --publish 80:80 --publish 22:22: 将容器内部的 443(HTTPS)、80(HTTP)和 22(SSH)端口映射到主机的对应端口,允许外部访问 GitLab。

--name gitlab: 指定容器的名称为 gitlab。

--restart always: 容器在退出后始终自动重启。

--volume /opt/gitlab/config:/etc/gitlab: 将主机上的 /opt/gitlab/config 目录挂载到容器内的 /etc/gitlab,用于存储 GitLab 的配置文件。

--volume /opt/gitlab/logs:/var/log/gitlab: 将主机上的 /opt/gitlab/logs 目录挂载到容器内的 /var/log/gitlab,用于存储 GitLab 的日志文件。

--volume /opt/gitlab/data:/var/opt/gitlab: 将主机上的 /opt/gitlab/data 目录挂载到容器内的 /var/opt/gitlab,用于存储 GitLab 的数据(如仓库数据、上传文件等)。

启动时间比较久,耐心等3-5分钟,此时可以查看启动日志

Docker 容器日志查看

cpp 复制代码
docker logs gitlab

如果你访问的页面没提示设置root管理员的密码,需要自己修改

修改密码步骤:

cpp 复制代码
# 进入 GitLab 容器或服务器(gitlab_container_name 容器ID)
	docker exec -it <gitlab_container_name> /bin/bash
	
	# 重置管理员密码
	gitlab-rails console -e production
	
	# 在控制台中重置密码
	user = User.where(id: 1).first
	user.password = 'chengdong'
	user.password_confirmation = 'chengdong'
	user.save!
	
	# exit 退出控制台并重启 GitLab
	gitlab-ctl restart

登录成功之后设置 中文

中间显示 Configure GitLab ==> Settings ==> Preferences ==> Localization 或者上面直接搜索:Default language root账户只能英文,创建新的账户登录就是中文了

cpp 复制代码
# 修改gitlab的下载代码的路径地址,修改gitlab主配置文件
#/opt/gitlab/config/gitlab.rb
修改:
external_url 'http://192.168.111.128'

重启容器

cpp 复制代码
docker restart gitlab
相关推荐
江湖有缘1 小时前
零基础入门:使用 Docker 快速部署 Organizr 个人主页
java·服务器·docker
广州中轴线2 小时前
OpenStack on Kubernetes 生产部署实战(十三)
容器·kubernetes·openstack
礼拜天没时间.3 小时前
深入Docker架构——C/S模式解析
linux·docker·容器·架构·centos
猫头虎3 小时前
如何使用Docker部署OpenClaw汉化中文版?
运维·人工智能·docker·容器·langchain·开源·aigc
会周易的程序员3 小时前
openplc runtimev4 Docker 部署
运维·c++·物联网·docker·容器·软件工程·iot
小Pawn爷4 小时前
1.Docker基础
运维·docker·容器
不倒翁玩偶4 小时前
Gitlab拉取代码token换成账号密码登录
gitlab
chinesegf4 小时前
清理docker残留镜像images
运维·docker·容器
小Pawn爷4 小时前
2.Docker的存储
运维·docker·容器
广州中轴线5 小时前
OpenStack on Kubernetes 生产部署实战(十七)
容器·kubernetes·openstack