[Talk is cheap. Show me the code]
前期准备:
1:自己购买的腾讯云
1.查看自己的系统版本
cat /etc/redhat-release
# CentOS Stream release 8
# 如果是其他版本建议升级,因为社区已经不在维护8.0, 7.0 几年之后也将废弃
# 8.0 在安装的过程中会遇到报错
# CentOS Linux 8 - AppStream 错误:为仓库 ‘appstream‘ 下载元数据失败 : Cannot prepare internal mirrorlist: No URLs
如果你的版本在8.0可以参考链接进行升级Centos 8 升级到 CentOS Stream 版本
2. 下载gitlab-ce
因为安装包本身很大以及网速等原因,所以我采用了本地下载,再上传到云端的方法,当然你也可以使用命令下载
2.1命令下载
# 可以头铁 但确实不建议 一般都是2小时起步。
# 目前市面上的镜像源都已经失效,清华源只有centos 7的版本
sudo yum makecache
sudo yum -y install gitlab-ce
2.2 本地下载安装包然后上传到远端云
#使用如下命令进行文件传输 你也可以使用别的方式
scp /path/filename username@servername:/path
3.安装gitlab-ce
3.1 安装相应依赖并做配置
# 安装依赖
yum install -y curl policycoreutils-python openssh-server
# 添加http服务到firewalld,且永久生效
systemctl start firewalld
firewall-cmd --permanent --add-service=http
systemctl reload firewalld
# 将下载之后的安装包上传的到自己的云服务器并安装
scp /path/filename username@servername:/path
rpm -ivh gitlab-ce-15.1.0-ce.0.el8.x86_64.rpm
4.添加gitlab-ce的相关配置
4.1: 安装之后修改url
# 查看external_url
vim /etc/gitlab/gitlab.rb
# 我这里修改
external_url 'http://公网Ip'
# 更新配置
sudo gitlab-ctl reconfigure
4.2:依次执行以下命令,设置 SSH 开机自启动并启动 SSH 服务
systemctl enable sshd
systemctl start sshd
4.3:执行以下命令,安装 Postfix邮件代理服务器。
yum install -y postfix
执行以下命令,设置 Postfix 服务开机自启动
systemctl enable postfix
4.4:执行以下命令,打开 Postfix 的配置文件 main.cf。
vim /etc/postfix/main.cf
# 按 i 进入编辑模式,删除 inet_interfaces = all 前的 #,在 inet_interfaces = localhost 前加上 #。修改完成后如下图所示:
5. 修改gitlab 默认80端口
这里请根据自己的需要,因为有些服务可能也会占用80端口,导致gitlab不可用
查看当前端口8080 被谁监听
netstat -lnp | grep 8080
默认情况下unicorn同样监听8080端口,查询/etc/gitlab/gitlab.rb中相应的设置 centos steam 没有这个配置。。
external_url 'http://公务Ip:其他未被占用的端口'
# external_url 'http://167***.86:8093'
##!更改内存限制
puma['per_worker_max_memory_mb'] = 1024
##! puma['ssl_port'] = 8801
##! https://docs.gitlab.com/ee/administration/operations/puma.html
##! puma['ssl_listen'] = '150.***.1'
##! puma['ssl_port'] = 9111
##! puma['port'] = 8093
##! nginx['listen_prot']=8093
##! unicorn['port'] = 8093 这个已经废弃了
这里不需要修改什么其他的操作,有些参数也已经不可用 只修改external_url保存即可 同时防火墙需要开放8093端口 ,你可以使用命令也可以在云web界面开发端口 tx云web界面操作
#开启8093
firewall-cmd --zone=public --add-port=8093/tcp --permanent
#关闭8093
firewall-cmd --zone=public --remove-port=8093/tcp --permanent
6.解决gitlab卡顿导致服务器崩溃的问题
云服务器开启swap分区_Linux系统开启swap分区和配置——Swap文件方式
启动swap分区 先用free -m查看当前分区情况,swap分区显示为0
free -m
#新建一个目录用于交换分区的文件,这里我的目录是/root/swapfile
dd if=/dev/zero of=/root/swapfile bs=1M count=1024
修改文件权限为600
chmod 600 /root/swapfile
把这个文件设置为交换分区文件
mkswap /root/swapfile
启用交换分区文件
swapon /root/swapfile
修改文件/etc/fstab ,在最后添加一行 /root/swapfile swap swap defaults 0 0
vim /etc/fstab
7: 总结
至此gitlab就部署完成了,浏览器地址栏输入 http://167***.86:8093 即可访问,请自行修改密码。
如果有任何关于本文的意见,请在文章下方留言,我会在看到的第一时间回复。