1-1-docker 方式安装 gitlab 以及使用
前言
Glitlab 比较占用内存,官方建议最低配置为 2核4G。我的服务器刚刚好是2核4G,但是还装了 Docker 跑一些其他服务,所以以防万一,还是选择在本地的虚拟机中进行安装。
虚拟机的安装, CentOS 系统的安装以及 Docker 环境的配置就不再演示,网上有很多非常详细的教程。我们直接上手安装 Gitlab
注:gitlab比较大,启动很慢,尤其是jenkins和gitlab同时启动时一般电脑操作gitlab和jenkins会比较卡、慢,需要耐心等待,占用虚拟机内存和cpu比较大!
搭建CentOS设置的内存过小导致的,不过物理机本身内存不高,虚拟机内存不也能设置太大,所以运行gitlab导致因内存低运行慢。我的物理机内存8G,设置为4G。电脑内存和cpu负载就比较大。所以,根据自己物理机实际情况设置虚拟机内存。
安装及配置
gitlab 镜像分为两个版本:
gitlab-ce 社区版
gitlab-ee 企业收费版
这里使用社区版则可,直接安装官方镜像,目前(2020/1/14)官方镜像大小约1.8G,如果你没有设置Docker镜像源,Docker会默认从国外Docker官方Hub去拉去进行,速度难以让人接受
gitlab镜像拉取
# gitlab-ce为稳定版本,后面不填写版本则默认pull最新latest版本
$ docker pull gitlab/gitlab-ce
挂载数据目录
如果要修改一个容器的配置或者查看它的日志,需要进入到容器里面,不是很方便。所以通常会给容器挂载数据卷,将容器内的重要目录,映射到宿主机中。
我们需要为 Gitlab 容器设置三个数据卷,也就需要在 Centos 系统中新建三个目录:srv目录下新建一个目录gitlab,然后再哎gitlab下新建config/logs/data三个映射配置目录
mkdir -p /home/gitlab
mkdir -p /home/gitlab/config # 映射到 Glitlab 容器中的配置目录
mkdir -p /home/gitlab/logs # 映射到 Glitlab 容器中的日志目录
mkdir -p /home/gitlab/data # 映射到 Glitlab 容器中的数据目录
运行gitlab镜像
$ docker run -d -p 443:443 -p 80:80 -p 222:22 --name gitlab --restart always -v /home/gitlab/config:/etc/gitlab -v /home/gitlab/logs:/var/log/gitlab -v /home/gitlab/data:/var/opt/gitlab gitlab/gitlab-ce
# -d:后台运行
# -p:将容器内部端口向外映射
# --name:命名容器名称
# -v:将容器内数据文件夹或者日志、配置等文件夹挂载到宿主机指定目录
运行成功后出现一串字符串
查看容器:
docker ps -a
运行容器:
docker start gitlab
访问地址
访问:http://192.168.111.3/
注意:这是虚拟机ip地址,
另外如果自己链接了vpn的,要把vpn关闭,我就是因为开启了vpn导致无法打开这个地址,
打开浏览器输入ip地址(因为我的gitlab端口为80,所以浏览器url不用输入端口号,如果端口号不是80,则打开为:ip:端口号)
查看初始密码
容器内有一个 initial_root_password 文件,root 用户的初始密码密码就在此文件中:
方法如下:
# 进入容器
docker exec -it -uroot gitlab /bin/bash
# 查看初始密码
cat /etc/gitlab/initial_root_password
修改初始密码
1.进入容器
docker exec -it -uroot gitlab /bin/bash
2.进入gitlab目录
cd /opt/gitlab/bin
3.执行命令
gitlab-rails console
4.执行命令
u=User.where(id:1).first
5.执行命令–修改密码
u.password='12345678'
6.执行命令–确认密码
u.password_confirmation='12345678'
7.执行命令–保存修改
u.save
8.结束
当提示true后说明修改成功,可进入gitlab登录页面使用root/12345678 进行登录!
用法和github是一样的