CentOs8 安装 GitLab

  • 一、安装依赖
  • 二、启动ssh并设置成开机自启动
  • 三、添加Http/Https服务到Firewalld, Pemmanent 表示永久生效,若不加 Permanent 系统下次启动后就会失效
  • 四、安装邮件服务
  • 五、在线下载GitLab
  • 六、安装 GitLab
  • 七、配置 GitLab
  • ① 修改 IP 和 端口
  • ② 修改配置 Redis
  • ③ 刷新配置
  • ④ 启动 GitLab
  • ⑤ 访问 GitLab
  • 八、安装过程中遇到的问题.
  • ① CentOs 8 跟 CentOs 8以下的版本有些命令是不同的.
  • ② CentOs 8 需要配置邮件服务,CentOs 7 不需要
  • ③ 配置 external_url 时, 请添加 http://
  • ④ 刷新配置时, 卡主的情况
  • ⑤ 如果需要卸载 GitLab.


一、安装依赖

dnf install -y curl policycoreutils openssh-server openssh-clients
yum install policycoreutils-python-utils

PS: 此图片是从网上借来的, 记录这篇文章的时候, GitLab已经安装完成了.

centos7 gitlab无法访问 centos8 gitlab_ssh

centos7 gitlab无法访问 centos8 gitlab_ssh_02

二、启动ssh并设置成开机自启动

systemctl enable sshd
systemctl start sshd

centos7 gitlab无法访问 centos8 gitlab_ssh_03

三、添加Http/Https服务到Firewalld, Pemmanent 表示永久生效,若不加 Permanent 系统下次启动后就会失效

systemctl start firewalld
firewall-cmd --permanent --add-service=http
firewall-cmd --permanent --add-service=https
firewall-cmd --permanent --add-service=https
systemctl reload firewalld

centos7 gitlab无法访问 centos8 gitlab_服务器_04

四、安装邮件服务

dnf install postfix
systemctl enable postfix
systemctl start postfix

PS: 此图片是从网上借来的, 记录这篇文章的时候, GitLab已经安装完成了.

centos7 gitlab无法访问 centos8 gitlab_linux_05


centos7 gitlab无法访问 centos8 gitlab_服务器_06

五、在线下载GitLab

wget https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el8/gitlab-ce-13.6.3-ce.0.el8.x86_64.rpm

镜像地址, 可自己选择喜欢的版本下载.

https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el8

PS: 此图片是从网上借来的, 记录这篇文章的时候, GitLab已经安装完成了.

centos7 gitlab无法访问 centos8 gitlab_ssh_07

六、安装 GitLab

rpm -i gitlab-ce-13.6.3-ce.0.el8.x86_64.rpm

centos7 gitlab无法访问 centos8 gitlab_git_08

七、配置 GitLab

① 修改 IP 和 端口

vim /etc/gitlab/gitlab.rb

修改为: IP :端口

external_url 'http://XXX.XXX.XXX.X:XXXX'

centos7 gitlab无法访问 centos8 gitlab_ssh_09

② 修改配置 Redis

external_url
unicorn[‘port’]
端口号最好不一致.

###禁用内部redis.
redis['enable'] = false
####设置外部redis链接参数.
gitlab_rails['redis_host'] = "127.0.0.1"
gitlab_rails['redis_port'] = 6379
# gitlab_rails['redis_ssl'] = false
gitlab_rails['redis_password'] = "XXXX"
gitlab_rails['redis_database'] = XX

external_url 'http://XXX.XXX.XXX.XXX:10008'
unicorn['port'] = 10009

### 禁用内部nginx.
#nginx['enable'] = false

##! **Override only if you use a reverse proxy**
##! Docs: https://docs.gitlab.com/omnibus/settings/nginx.html#setting-the-nginx-listen-port
# nginx['listen_port'] = 10003

centos7 gitlab无法访问 centos8 gitlab_centos7 gitlab无法访问_10

③ 刷新配置

刷新配置的时间, 大概五分钟左右. 在这个期间不要动, 防止出现意外情况.

gitlab-ctl reconfigure

centos7 gitlab无法访问 centos8 gitlab_ssh_11

④ 启动 GitLab

gitlab-ctl restart

centos7 gitlab无法访问 centos8 gitlab_服务器_12

⑤ 访问 GitLab

访问地址, 就是 external_url 填写的

centos7 gitlab无法访问 centos8 gitlab_linux_13

八、安装过程中遇到的问题.

① CentOs 8 跟 CentOs 8以下的版本有些命令是不同的.

比如安装依赖的命令

CentOs7:  yum install -y curl policycoreutils-python openssh-server
CentOs8:  dnf install -y curl policycoreutils openssh-server openssh-clients

② CentOs 8 需要配置邮件服务,CentOs 7 不需要

③ 配置 external_url 时, 请添加 http://

④ 刷新配置时, 卡主的情况

如果卡主的时间超过十分钟, 一般情况建议终止.

解决方案: gitlab reconfigure 卡住 ruby_block[wait for redis service socket] action run

centos7 gitlab无法访问 centos8 gitlab_centos7 gitlab无法访问_14