02【前端工程化初探】GitLab本地部署

概述

这篇文章先来预热一下,我们在自己的虚拟机里搭建一套GitLab环境,然后自己就可以使劲折腾。具体搭建步骤如下。

系统环境

系统:CentOS 8.1

内存:4G起步

硬盘:50G(仅供测试环境)

IP:192.168.0.104

具体操作步骤

一、CentOS 8.1安装

1、到CentOS官网(https://www.centos.org/)下载最新版的安装镜像,如下图所示:

2、使用VirtualBox安装CentOS 8.1的虚拟机。首先在VirtualBox中选择新建虚拟机,然后在弹出的面板中输入虚拟机相关的信息,包括虚拟机名称、存放目录、虚拟机类型、虚拟机内存、硬盘大小等,设置完后点击确定即可完成一个虚拟机的初始创建,如下:

3、初始化后的虚拟机是没有关联镜像的,所以我们接下来进行关联镜像。点击【设置】菜单,然后选择【存储】选项卡,打开存储设置面板,如下:

在此面板选择控制器下的“没有盘片”字样,然后点击图中位置进行镜像文件的选择和关联,如下:

点击确定后即可完成镜像文件的关联操作。

4、同样的在设置面板选择【系统】选项卡,然后将光驱启动设置为第一启动项,如下图所示:

5、点击【启动】菜单按钮,开始虚拟机的安装,如下:

6、点击启动按钮后,虚拟机CentOS 8.1的安装过程其实就和我们普通的CentOS系统安装没有任何区别了,我们只需要简单的配置下安装时候所需要的一些信息即可,比如我配置了安装桌面选项,如下图(这个过程中的有些参数如果有不明白的,直接网上找资料即可,资料是非常多的,没必要在此处做重复的介绍):

如果点击重启后又重新进入到了安装界面,我们只需要点击上方的【控制】菜单,然后打开设置面板,在存储选项卡下将我们之前添加的CentOS镜像盘片卸载掉即可,因为这时候系统已经安装好了,它就没有存在的必要了。卸载之后重启虚拟机即可正常进入系统了,如下:

7、如上所示,CentOS 8.1系统安装成功。

二、GitLab部署

通过以上操作我们完成了CentOS 8.1虚拟机的安装,接下来就开始部署GitLab。使用XShell等工具连接安装的CentOS 8.1虚拟机,在连接过程中如果发现虚拟机的IP是10.0.2.15或者说虚拟机压根就没有IP信息,这就需要我们为虚拟机配置网络信息和启动网卡,具体操作步骤请查阅网络资料即可。

虚拟机网络配置正常后,我们接下来进行GitLab的配置。

1、GitLab的安装部署其实直接看官网的文档即可,里面描写的很清楚,地址如下:

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

2、首先我们使用以下命令来打开防火墙中的HTTP、HTTPS、SSH通道,如下:

sudo dnf install -y curl policycoreutils openssh-server
sudo systemctl enable sshd
sudo systemctl start sshd
# 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

3、然后通过以下命令来安装Postfix来实现邮件通知功能,如下:

sudo dnf install postfix
sudo systemctl enable postfix
sudo systemctl start postfix

4、接下来进行安装和配置GitLab,如下:

curl https://packages.gitlab.com/install/repositories/gitlab/gitlab-ee/script.rpm.sh | sudo bash
sudo EXTERNAL_URL="http://localhost" dnf install -y gitlab-ee

5、安装完成后,使用如下命令安装Vim编辑器:

yum install vim -y

6、使用如下命令配置gitlab的访问IP和端口:

vim /etc/gitlab/gitlab.rb

将我们安装是指定的localhost改成虚拟机IP,端口指定一个另外的端口,如上图所示。修改成功后,使用如下命令使配置生效,并且重启gitlab:

gitlab-ctl reconfigure
gitlab-ctl restart

7、通过以下命令开放8088端口:

firewall-cmd --zone=public --list-ports #查看开放端口
firewall-cmd --zone=public --add-port=8088/tcp --permanent #开放8088端口
firewall-cmd --reload   #重新加载配置
#如果不需要,也可以直接关闭防火墙
systemctl stop firewalld.service

8、浏览器通过地址"http://192.168.0.104:8088/"地址来访问gitlab,初次访问会被重定向到密码修改界面,初始账户为:

初始账户: root 密码:5iveL!fe

登录修改密码后,页面会自动会到登录界面,我们用新密码登录即可进入到部署的GitLab,如下所示:

9、使用如下命令进入到虚拟机网卡设置目录,设置虚拟机静态IP,如下:

cd /etc/sysconfig/network-scripts/
vi ifcfg-enp0s3

然后在文件中做如下修改:

TYPE="Ethernet"
PROXY_METHOD="none"
BROWSER_ONLY="no"

#动态ip
#BOOTPROTO="dhcp"

#静态IP
BOOTPROTO=static
IPADDR=192.168.0.104 ## 你想要的静态ip
NETMASK=255.255.255.0 #子网掩码为物理机子网掩码(subnet mask) 
GATEWAY=192.168.0.1 #跟物理机网关相同

DEFROUTE="yes"
IPV4_FAILURE_FATAL="no"
IPV6INIT="yes"
IPV6_AUTOCONF="yes"
IPV6_DEFROUTE="yes"
IPV6_FAILURE_FATAL="no"
IPV6_ADDR_GEN_MODE="stable-privacy"
NAME="enp0s3"
UUID="0dd666ac-c97e-4b6a-898e-0765ba16246d"
DEVICE="enp0s3"
ONBOOT="yes"

保存退出后,使用如下命令重启网卡:

nmcli c reload

至此,虚拟机静态IP设置成功。

10、使用如下命令进行邮箱配置:

vim /etc/gitlab/gitlab.rb

然后在配置文件中添加如下信息:​

gitlab_rails['smtp_enable'] = true
gitlab_rails['smtp_address'] = "smtp.qq.com"
gitlab_rails['smtp_port'] = 465
gitlab_rails['smtp_user_name'] = "[email protected]"
gitlab_rails['smtp_password'] = "ddddddddddwwwww"
gitlab_rails['smtp_domain'] = "smtp.qq.com"
gitlab_rails['smtp_authentication'] = :login
gitlab_rails['smtp_enable_starttls_auto'] = true
gitlab_rails['smtp_tls'] = true
gitlab_rails['gitlab_email_from'] = '[email protected]'

#修改gitlab配置的发信人
gitlab_rails['gitlab_email_from'] = "[email protected]"
user["git_user_email"] = "[email protected]"  # 必须是一个具体的邮箱。不能瞎编

配置保存之后,使用如下命令进行配置生效和gitlab重启:

gitlab-ctl reconfigure
gitlab-ctl restart

重启成功后,使用如下命令开启虚拟机的465端口,如下:

firewall-cmd --zone=public --list-ports #查看开放端口
firewall-cmd --zone=public --add-port=465/tcp --permanent #开放465端口
firewall-cmd --reload   #重新加载配置
#如果不需要,也可以直接关闭防火墙
systemctl stop firewalld.service

然后使用如下命令进行邮箱配置的测试:

gitlab-rails console
Notify.test_email('[email protected]','X北辰北','测试邮件').deliver_now

如果出现以下报错信息,是因为我们的邮箱没有开启SMTP服务导致:

我们打开QQ邮箱的设置界面,然后切换到【账户】选项卡,在页面底部选择打开相应的服务,打开后会给我们一段授权码,然后我们将授权码粘贴到gitlab的配置文件中,重新使之生效和启动gitlab,如下:

使用命令打开gitlab配置文件,替换配置文件中的邮箱密码为生成的授权码:

然后同样的,使用如下命令使配置生效和重启gitlab:

gitlab-ctl reconfigure
gitlab-ctl restart

gitlab重启后,我们使用上述的测试命令再次进行测试,如果邮件成功发送,则说明邮箱配置成功,如下:

11、打开"C:\Users\用户名\.ssh"目录,将里面id_rsa.pub文件里的信息复制粘贴到gitlab,就完成了gitlab的ssh配置,然后我们接下来进行测试。

12、我们在gitlab中新建一个项目,然后将它git clone到本地,如下:

然后修改里面的README文档或者自己新建一个html页面,使用git将它提交,如果成功提交,则说明我们的gitlab到目前为止完成了基础的配置,如下:

此时我们的GitLab环境安装部署成功。

总结

这篇文章在部署成功GitLab的同时,我们还配置了邮件发送,当我们提交代码后,邮箱会收到相应的提示信息。

发布了147 篇原创文章 · 获赞 258 · 访问量 31万+

猜你喜欢

转载自blog.csdn.net/qq_35117024/article/details/105373650
今日推荐