Gitlab基础篇: Gitlab docker 安装部署、Gitlab 设置账号密码

文章目录

1、环境准备

安装docker gitlab前确保docker环境,如果没有搭建docker请查阅"Linux docker 安装文档"

docker 下载 gitlab容器

复制代码
docker pull gitlab/gitlab-ce

2、配置

1)、初始化

复制代码
docker run --detach --name gitlab -p 18081:80 -p 10022:22 --restart always -v /backup/gitlab/config:/etc/gitlab -v /backup/gitlab/logs:/var/log/gitlab -v /backup/gitlab/data:/var/opt/gitlab gitlab/gitlab-ce:latest

参数解析

命令 参数 解析
-name gitlab 容器的名称
-p 18081:80 80端口为gitlab可视化操作服务的默认访问端口,防止占用将80更改为18081
-p 10022:22 22为ssh 端口,因为冲突所以改成10022
--restart always ----null----- 该配置当docker重启时,gitlab也会随着docker自动重启
-v path1:path2 将data、log、config等默认路径修改为path1

2)、修改gitlab配置文件

修改gitlab配置文件

复制代码
vim /backup/gitlab/config/gitlab.rb
key value
external_url 'http://ip:18081'

3)、修改docker配置的gitlab默认端口

修改docker镜像的gitlab容器端口前需要把gitlab容器以及docker镜像关闭

关闭gitlab容器

复制代码
docker stop gitlab

关闭docker镜像

复制代码
systemctl stop docker

查看docker下所有容器的ID

进入docker配置文件目录

复制代码
cd /var/lib/docker/containers

可以看到在docker ps -a 打印中看到 容器ID ps 展示的容器ID只时原来的一部分

554ab7170af6

通过容器ID就能找到containers下具体哪一个是gitlab容器的配置
554ab7170af6f10f7388a577aed45658b39b5a926b8a3f55f7e0a2bfa22af879

进入容器配置目录

复制代码
cd 554ab7170af6f10f7388a577aed45658b39b5a926b8a3f55f7e0a2bfa22af879

修改config.v2.json、hostconfig.json文件

复制代码
vim config.v2.json

json文件很乱可以通过文件查询方式找到需要修改的地方

vim进入后可以使用Shift+/(打出问号?)直接输入关键字ExposedPorts (注:查询模式可以用N键跳转到下一个 #E91E63 )

修改成如下即可然后保存

json 复制代码
"ExposedPorts": {
			"18081/tcp": {},
			"22/tcp": {},
			"443/tcp": {},
			"80/tcp": {}
		}

修改hostconfig.json

复制代码
vim hostconfig.json

老办法查询关键字PortBindings

直接修改成如下即可然后保存

json 复制代码
"PortBindings": {
		"18081/tcp": [{
			"HostIp": "",
			"HostPort": "18081"
		}],
		"22/tcp": [{
			"HostIp": "",
			"HostPort": "10022"
		}]
	}

gitlab进阶配置

gitlab 设置账号密码

先登录到docker gitlab容器中

shell 复制代码
	docker exec -it 容器id /bin/bash

进入gitlab 控制台

shell 复制代码
gitlab-rails console -e production

登录成功

查看所有用户

shell 复制代码
User.all

上图可看出有两个账号

我们以root账号为例来修改密码

将用户对象赋值给user变量

shell 复制代码
user=User.find(1)

修改密码

shell 复制代码
user.password = 'new_password'

确认密码

shell 复制代码
user.password_confirmation = 'new_password'

保存

shell 复制代码
user.save!

查看用户状态

shell 复制代码
user.state
#查询其他用户的信息也可以通过以下命令
User.where(id:1).first
User.find_by(username:'root')
User.find_by(email:'*****@qq.com')

退出gitlab 控制台

shell 复制代码
exit;
相关推荐
IT闫37 分钟前
【AI】——结合Ollama、Open WebUI和Docker本地部署可视化AI大语言模型
docker·语言模型·容器
梁萌1 小时前
06-DevOps-自动构建Docker镜像
运维·docker·devops
星释1 小时前
GitLab-CI集成FTP自动发布
elasticsearch·ci/cd·gitlab
pingzhuyan7 小时前
03(总)-docker篇 Dockerfile镜像制作(jdk,jar)与jar包制作成docker容器方式
java·docker·jar
Bl_a_ck9 小时前
【C++】Docker介绍
运维·docker·容器·eureka
keepython10 小时前
【n8n docker 部署的代理问题】解决n8n部署无法访问openai等外国大模型厂商的api
运维·人工智能·docker·容器
八股文领域大手子11 小时前
优化IDEA2024.3大型项目启动慢
运维·nginx·spring·docker·容器
深夜面包14 小时前
Ubuntu 安装与配置 Docker
linux·ubuntu·docker
斯普信专业组16 小时前
二进制和docker两种方式部署Apache pulsar(standalone)
docker·容器·apache
Michaelwubo16 小时前
docker 支持GPU 问题 安装 NVIDIA Docker
docker·容器·eureka