- 产品:Gitlab
- 版本: 最新
- 环境: Centos7
前期准备
服务器最小要求说明
-
磁盘
Omnibus Gitlab包需要大约2.5 GB的存储空间进行安装,如果您有足够的RAM和最近的CPU,Gitlab的速度主要受硬盘驱动器搜索时间的限制。具有快速驱动器(7200 RPM和UP)或固态驱动器(SSD)可提高Gitlab的响应性。
-
CPU
CPU要求取决于用户数和期望的工作量。根据您的工作量,您的确切需求可能更多,以下是少数几个示例Gitlab用户基数的推荐最低CPU硬件指导。
- 4核是建议的最小核数,并支持最多500个用户
- 8核最多支持1000个用户
-
内存
- 4GB RAM是所需的最小内存大小,最多可支持500个用户
- 8GB RAM最多支持1000个用户
docker安装
- 卸载旧版本docker
yum remove docker \
docker-client \
docker-client-latest \
docker-common \
docker-latest \
docker-latest-logrotate \
docker-logrotate \
docker-engine
执行结果
[root@xsyunwei ~]# yum remove docker \
> docker-client \
> docker-client-latest \
> docker-common \
> docker-latest \
> docker-latest-logrotate \
> docker-logrotate \
> docker-engine
Loaded plugins: fastestmirror
No Match for argument: docker
No Match for argument: docker-client
No Match for argument: docker-client-latest
No Match for argument: docker-common
No Match for argument: docker-latest
No Match for argument: docker-latest-logrotate
No Match for argument: docker-logrotate
No Match for argument: docker-engine
No Packages marked for removal
[root@xsyunwei ~]#
- 使用存储库安装
在新主机上首次安装Docker Engine之前,需要设置Docker存储库。之后,您可以从存储库安装和更新Docker
$ yum install -y yum-utils
$ yum-config-manager \
--add-repo \
https://download.docker.com/linux/centos/docker-ce.repo
- 安装DOCKER引擎
安装最新版本的Docker Engine和容器
# yum切换源(不切换yum可能导致一些依赖无法下载)
mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.bak
wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
# 安装
yum install docker-ce docker-ce-cli containerd.io
- 启动Docker
systemctl start docker
通过运行hello-world
映像来验证是否正确安装了Docker Engine
docker run hello-world
Gitlab安装
在设置其他所有内容之前,请配置一个新的环境变量$GITLAB_HOME指向配置,日志和数据文件所在的目录。确保目录存在,并且已授予适当的权限。
对于Linux用户,可以将路径设置为/srv/gitlab:
export GITLAB_HOME=/srv/gitlab
对于MacOS用户,可以使用用户的$HOME/gitlab目录:
export GITLAB_HOME=$HOME/gitlab
可以微调这些目录以满足您的要求。一旦设置了GITLAB_HOME变量,您可以运行以下命令创建Gitlab容器:
sudo docker run --detach \
--hostname gitlab.example.com \
--publish 443:443 --publish 80:80 --publish 22:22 \
--name gitlab \
--restart always \
--volume $GITLAB_HOME/config:/etc/gitlab \
--volume $GITLAB_HOME/logs:/var/log/gitlab \
--volume $GITLAB_HOME/data:/var/opt/gitlab \
--shm-size 256m \
gitlab/gitlab-ee:latest
修改root密码
暂时没有找到查询docker安装Gitlab默认密码的方式,因此直接修改
-
使用root权限登录到服务器
-
进入运行Gitlab的容器
[root@VM-8-7-centos ~]# docker ps CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 450fe5c15976 gitlab/gitlab-ee:latest "/assets/wrapper" About an hour ago Up 11 minutes (healthy) 0.0.0.0:21122->22/tcp, :::21122->22/tcp, 0.0.0.0:21180->80/tcp, :::21180->80/tcp, 0.0.0.0:21443->443/tcp, :::21443->443/tcp gitlab [root@VM-8-7-centos ~]# docker exec -it 450fe5c15976 bash root@gitlab:/#
-
执行gitlab-rails console
root@gitlab:/# gitlab-rails console -------------------------------------------------------------------------------- Ruby: ruby 2.7.5p203 (2021-11-24 revision f69aeb8314) [x86_64-linux] GitLab: 14.8.2-ee (20a7fdf52c9) EE GitLab Shell: 13.23.2 PostgreSQL: 12.7 -----------------------------------------------------------[ booted in 127.39s ] Loading production environment (Rails 6.1.4.6) irb(main):001:0>
-
找到root的用户,输入u=User.where(id:1).first,然后回车
irb(main):001:0> u=User.where(id:1).first => #<User id:1 @root>
-
修改password,输入u.password=‘你的密码’,然后回车
irb(main):002:0> u.password='xingshiyunwei' => "xingshiyunwei#"
-
输入u.password_confirmation='你的密码’进行密码确认
irb(main):003:0> u.password_confirmation='xingshiunwei#' => "xingshiunwei#"
-
输入u.save!保存密码即可修改成功
irb(main):004:0> u.save! => true