如何在阿里云部署GitLab?

  本教程默认阿里云的ECS已经创建好,并在此基础上部署GitLab环境。

  GitLab官网上有个手动部署的教程,而且不同操作系统的指令也多多少少有些区别,官网教程链接如下:

https://about.gitlab.com/install/#centos-8

但官网的教程有点过于理想,完全按照这个教程来,经常会部署失败,因此我们就整理了一下部署方法,笔者用的系统是centos-8,如果是其他系统,请参考官网的部署指令进行修改。

  1. 安装依赖包
sudo dnf install -y curl policycoreutils openssh-server perl
  1. 设置SSH开机自启动并启动SSH服务
sudo systemctl enable sshd
sudo systemctl start sshd
  1. 打开防火墙中的HTTP和SSH服务
# Check if opening the firewall is needed with: sudo systemctl status firewalld
sudo firewall-cmd --permanent --add-service=http
sudo firewall-cmd --permanent --add-service=https
sudo systemctl reload firewalld

该步骤可能会遇到FirewallD is not running的错误提示,使用下面命令开启防火墙:

systemctl start firewalld.service
  1. 安装Postfix开机自启动
sudo dnf install postfix
sudo systemctl enable postfix
sudo systemctl start postfix
  1. 启动Postfix服务

运行命令vim /etc/postfix/main.cf,编辑main.cf文件,将下面两个参数进行修改:

inet_interfaces = all
inet_protocols = ipv4 // 或 all

提示:按i键进入编辑模式,编辑完成后按:wq保存退出。

修改完成后,执行下面指令启动服务:

sudo systemctl restart postfix
  1. 开启端口并设置防火墙

这一步我是直接在网页上操作的,在网络与安全中的安全组->配置规则

image-20210918194713201

添加规则,按下面方式定义即可,端口号可自己设,比如8888

image-20210918194809782

网上也有通过脚本设置的,但笔者并没有试过:

#开启8888端口(端口号自己设)firewall-cmd --zone=public --add-port=8888/tcp --permanent#重启防火墙systemctl restart firewalld
  1. 添加GitLab的软件包仓库
curl https://packages.gitlab.com/install/repositories/gitlab/gitlab-ee/script.rpm.sh | sudo bash
  1. 安装GitLab

此时需要我们进入阿里云的实例中,查看公网的IP地址:

image-20210918201021752

假设IP地址是45.45.45.45,我们上面设置的端口号是8888。

sudo EXTERNAL_URL="45.45.45.45:8888" yum install -y gitlab-ee

后面的gitlab-ee表示企业版,也可以安装社区版,即gitlab-ce。

安装完成后,在浏览器地址中输入45.45.45.45:8888,可以看到如下界面。即第一次登录的时候需要重置密码,用户名是root。

gitlab1

  1. 如果部署完成后,进入不到GitLab的页面,说明上面的部署过程有问题,再认真检查。

  2. 没有出现重置密码的页面,而且出现下面这个需要输入用户名和密码的页面,但由于此时我们并未设置过密码,所以肯定登不上去。

image-20210918145454983

此时通过命令行进入cd /opt/gitlab/bin目录下,执行

gitlab-rails console prodection

如果该指令提示错误,执行:

sudo gitlab-rails console -e production

如果指令正常执行的话,会出现下面的界面,并进行如下操作:

  • 切换到root,输入u = User.where(id:1).first
  • 设置密码:u.password='12345678'
  • 确认密码:u.password_confirmation='12345678'
  • 保存设置:u.save!
  • 如果出现true,则表示设置成功,输入exit退出,回到命令行模式

image-20210918224814183

此时再进入到刚刚的GitLab页面,输入用户名和密码,用户名为root,密码是我们刚刚设置的12345678,就可以登录了。

登录之后,即便是自己使用,最好也创建个单独的用户,不要直接使用root。

欢迎关注微信公众号:Quant_Times
在这里插入图片描述

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值