简体中文 繁體中文 English Deutsch 한국 사람 بالعربية TÜRKÇE português คนไทย Français Japanese

站内搜索

搜索

活动公告

通知:为庆祝网站一周年,将在5.1日与5.2日开放注册,具体信息请见后续详细公告
04-22 00:04
通知:本站资源由网友上传分享,如有违规等问题请到版务模块进行投诉,资源失效请在帖子内回复要求补档,会尽快处理!
10-23 09:31

docker安装GitLab

SunJu_FaceMall

938

主题

835

科技点

1325

积分

白金月票

积分
1325

未来的小说家柴到了立华奏无人之境【一阶】小樱(小丑装)

发表于 2025-3-21 02:01:27 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?立即注册

x

GitLab安装

1、安装docker

1.1、卸载老版本docker

yum remove docker \
docker-client \
docker-client-latest \
docker-common \
docker-latest \
docker-latest-logrotate \
docker-logrotate \
docker-selinux \
docker-engine-selinux \
docker-engine \
docker-ce

1.2、安装lvm2

yum install -y yum-utils device-mapper-persistent-data lvm2

1、yum-utils:此软件包提供一组工具,可增强YUM软件包管理器的功能。它包括诸如yum-config-manager的命令,它可以帮助你管理YUM仓库配置,以及package-cleanup命令,它允许你清理不再需要的软件包。

2、device-mapper-persistent-data:此软件包提供用于管理设备映射器(device mapper)的工具,设备映射器是一个内核框架,用于将物理块设备映射到更高级别的虚拟块设备。它包括对设备映射器快照和精简配置的支持。

3、lvm2:逻辑卷管理器(LVM)是一种系统,允许你以灵活高效的方式管理磁盘存储空间。它使你能够创建、调整大小和管理逻辑卷,这些卷可以跨越多个物理磁盘。

1.3、配置镜像源

yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

  1. yum-config-manager: 这是一个用于管理YUM仓库配置的命令。它允许你添加、删除、启用、禁用和显示YUM仓库,以便在系统上安装软件包。
  2. --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo: 这部分命令会向YUM配置管理器添加一个新的仓库。具体来说,它会从阿里云镜像站添加一个名为docker-ce.repo的仓库文件。这个仓库文件包含了Docker社区版软件包的信息,包括下载地址和软件包清单。

通过运行这个命令,你的系统将知道从阿里云镜像站获取Docker CE软件包的位置,从而可以使用YUM来安装和管理Docker CE。这在安装、更新和维护软件包时非常有用,因为它使得获取软件包更加方便,并且你可以从可信赖的镜像站点下载软件包。

1.4、安装docker

yum install docker-ce

1.5、验证

yum list docker-ce --showduplicates | sort -r

列出可用的Docker社区版(Docker CE)软件包及其不同版本,并按照版本号降序排序

  1. yum list docker-ce: 这部分命令用于列出系统中可用的所有Docker CE软件包及其各个版本。这会显示出每个版本的软件包名称、版本号、仓库来源等信息。
  2. --showduplicates: 此选项告诉YUM显示所有可用版本的软件包,而不仅仅是最新的版本。这对于了解系统中的不同版本非常有用。
  3. |: 这是管道操作符,将一个命令的输出作为另一个命令的输入。
  4. sort -r: 这部分命令用于对前一个命令的输出进行排序。sort命令按照默认的字典顺序进行排序,-r选项表示按照降序排序(从高到低版本号)。

1.6、启动docker

systemctl start docker

1.7、配置docker开机自启

systemctl enable docker

1.8、查看docker运行状态

systemctl status docker

2、拉取gitLab镜像

2.1、搜索gitlab所有镜像

docker search gitlab

2.2、下载Gitlab社区免费版最新镜像

ce 表示社区免费版 ,ee 表示企业付费版

docker pull gitlab/gitlab-ce

2.3、查看镜像是否下载成功

docker images

2.4、 运行Gitlab镜像

docker run -d \
--hostname gitlab.bing.com \
--name gitlab \
--restart always \
-p 8082:443 -p 8083:80 -p 8084:22 \
-v /etc/localtime:/etc/localtime:ro \
-v /usr/local/gitlab_data/gitlab/config:/etc/gitlab \
-v /usr/local/gitlab_data/gitlab/logs:/var/log/gitlab \
-v /usr/local/gitlab_data/gitlab/data:/var/opt/gitlab \
gitlab/gitlab-ce
  • docker run -d: 这是运行Docker容器的命令,-d 表示在后台运行容器。
  • --hostname gitlab.xxx.com: 设置容器的主机名为 "gitlab.xxx.com"。这个主机名将用于访问GitLab服务。
  • --name gitlab: 指定容器的名称为 "gitlab",这个名称将用于在Docker中唯一标识这个容器。
  • --restart always: 设置容器在退出时自动重启,以确保GitLab服务持续可用。
  • -p 8082:443 -p 8083:80 -p 8084:22: 这是端口映射设置,将容器内部的端口映射到主机上的端口。在这里,容器的 443 端口(HTTPS)、80 端口(HTTP)和 22 端口(SSH)分别映射到主机上的 8082、8083 和 8084 端口。
  • -v /etc/localtime:/etc/localtime:ro: 这是将主机上的 /etc/localtime 文件挂载到容器内的同一路径,用于同步容器的时间与主机的时间。
  • -v /usr/local/gitlab_data/gitlab/config:/etc/gitlab: 将主机上的 GitLab 配置文件目录挂载到容器内的 /etc/gitlab 目录,以保留 GitLab 的配置设置。
  • -v /usr/local/gitlab_data/gitlab/logs:/var/log/gitlab: 将主机上的 GitLab 日志目录挂载到容器内的 /var/log/gitlab 目录,以保留 GitLab 的日志记录。
  • -v /usr/local/gitlab_data/gitlab/data:/var/opt/gitlab: 将主机上的 GitLab 数据目录挂载到容器内的 /var/opt/gitlab 目录,以保留 GitLab 的数据,如存储库等。
  • gitlab/gitlab-ce: 这是要运行的Docker镜像的名称,指的是 GitLab Community Edition(CE)版本。

启动时间可能比较长,可以使用以下命令查看gitlab启动日志

docker logs -f gitlab

2.5、开放端口

firewall-cmd --zone=public --add-port=8082-8084/tcp --permanent

sudo firewall-cmd --reload #重新加载防火墙

firewall-cmd --list-ports #查看开放端口

设置完成后,修改配置文件,docker挂载目录为

/usr/local/gitlab_data/gitlab/config

执行:

cd /usr/local/gitlab_data/gitlab/config

vim gitlab.rb

添加这三行配置

#gitlab访问地址,可以写域名。如果端口不写的话默认为80端口
external_url 'http://你的本机地址'
##ssh主机ip
gitlab_rails['gitlab_ssh_host'] = '你的本机地址'
##ssh连接端口
gitlab_rails['gitlab_shell_ssh_port'] = 8084

2.6、配置gitlab.yml文件(可以暂时不不配置 有可能报502)

#先进入到config目录下
cd /opt/gitlab/embedded/service/gitlab-rails/config
#打开编辑gitlab.yml文件
vi gitlab.yml
#修改host 与上面.rb文件修改的一致
#修改port端口为8083

以上是网上一些博主的方式

也可以尝试我的方式:
#cd到挂载目录
cd  /usr/local/gitlab_data/gitlab/data/gitlab-rails/etc
#配置
vim gitlab.yml
修改port端口为8083

修改port 8083

通过本机ip加端口(映射80的端口 例如8083)进行访问。

http://你的ip地址:8083/

3、修改初始密码

3.1、查看初始化root用户的密码(可能查不到,博主安装过程中未查到密码)

sudo docker exec -it gitlab grep 'Password:' /etc/gitlab/initial_root_password

未查到密码的执行以下操作

#进入容器内部
docker exec -it gitlab /bin/bash
#进入控制台
gitlab-rails console production
# 查询id为1的用户,id为1的用户是超级管理员
user = User.where(id:1).first
# 修改密码 记得带上单引号 否则报错
user.password='Bing12345678'
# 保存
user.save!
# 退出
exit

修改完成后可以直接进行登录,账号为root,密码为你设置的。

附带一些常用的防火墙命令

systemctl status firewalld #查看防火墙状态
systemctl start firewalld #开启防火墙
systemctl stop firewalld #关闭防火墙
#设置单个端口开放
sudo firewall-cmd --add-port=8080/tcp --permanent
#设置多端口开发 例如8080-8082
firewall-cmd --zone=public --add-port=8080-8082/tcp --permanent
sudo firewall-cmd --reload #重新加载防火墙
firewall-cmd --list-ports  #查看开放端口
可爱小樱
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

站长推荐上一条 /1 下一条

手机版|联系我们|小黑屋|TG频道|RSS |网站地图

Powered by Pixtech

© 2025-2026 Pixtech Team.

>