暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

测试开发之自动化部署(一)_GitLab代码库搭建

469


前言

硬件环境:ubuntu 20 +树莓派 arm64 4核8g

gitlab对系统配置较高只是要有4g运行内存才能正常运行

本教程可以适配ubuntu 版本的任意服务器


安装

GitLab是一个专业的Git解决方案,功能强大,和GitHub类似,而且其Community Edition (CE)是免费的,完全可以胜任为中小团队提供专业代码托管服务的工作,当然更重要的是它可以在Raspberry Pi上部署运行。

准备

项目首页:https://about.gitlab.com

下载页:https://packages.gitlab.com/gitlab/raspberry-pi2

下载地址(打开页面,点击右上角的Download按钮):

选择任意下载、下载好后上传到你的服务器后进行安装

sudo dpkg -i [gitlab_package].deb

安装成功后会提示

查看端口占用信息

netstat -nultp

GitLab默认会占用80、8080和9090端口,如果服务器上还有tomcat、Jenkins等其他服务,可能会遇到端口冲突。所以我们需要修改默认端口


修改系统端口

用vim打开gitlab的配置文件:

vim etc/gitlab/gitlab.rb

找到 external_url  关键字 --- 这个参数为gitlab对外开放的url地址

##! Note: During installation/upgrades, the value of the environment variable
##! EXTERNAL_URL will be used to populate/replace this value.
##! On AWS EC2 instances, we also attempt to fetch the public hostname/IP
##! address from AWS. For more details, see:
##! https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instancedata-data-retrieval.html

external_url 'http://gitlab.zhank.top' # 改成你自己的host 如果是外网可以是外网ip或者域名

## Roles for multi-instance GitLab

external_url 这个参数是指你的gitlab对外的访问地址、修改成你的正确地址、内网就用内网ip、公网有域名就用域名、我的域名是已经备案的、且对外进行内网穿透了可以外网进行访问我的gitlab。

然后再找到 nginx['listen_port'] 关键字(这个参数的修改是gitlab是否正常启动的关键、不能与系统的端口出现冲突否则gitlab无法正常启动、且无法正常使用)

修改nginx默认端口

默认是被注释到了且还是nil、将它修改成8066端口、并且打开注释

##! **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'] = 8066

##! **Override only if your reverse proxy internally communicates over HTTP**
##! Docs: https://docs.gitlab.com/omnibus/settings/nginx.html#supporting-proxied-ssl
# nginx['listen_https'] = nil

保存文件修改 :wq

修改配置后更新配置

gitlab-ctl reconfigure




安装好后


配置文件完成后进行启动gitlab相关服务

gitlab-cti start

启动服务后浏览器输入http://gitlab.zhank.top 即可进入gitlab

默认账号用户名为root、查看默认密码在/etc/gitlab/initial_root_password 下


cat etc/gitlab/initial_root_password

登录成功后

其他相关配置


进行配置些相关安全性的东西

关闭注册功能


点击头像进入设置管理界面

将注册功能取消掉、这样就可以防止外网用户恶意注册破坏代码管理


设置用户上限、好像gitlab默认为十个用户根据你自己的公司成员来确定具体的用户数


到这gitlab基本已经搭建好了、gitlab的使用需要一定时间的去学习才能很好的使用、这个后续再给大家分享我们测试如何使用gitlab的。


Gitlab的服务构成

Nginx:静态web服务器。

gitlab-shell:用于处理Git命令和修改authorized keys列表。

gitlab-workhorse: 轻量级的反向代理服务器。

logrotate:日志文件管理工具。

postgresql:数据库。

redis:缓存数据库。

sidekiq:用于在后台执行队列任务(异步执行)。

unicorn:An HTTP server for Rack applications,GitLab Rails应用是托管在这个服务器上面的。

其实在启动gitlab后会启动其他相关服务、特别是prometheus 会占用大量cpu如果你的服务器需要进行运行其他服务建议可以进行将其不需要的服务进行禁用、后续会出教程进行分享如何去解决这些问题。

接口开发与测试实战系列将会暂时停滞一段时间、由于项目环节可能需要进行有所调整、后续再继续给大家更新!!!二个系列也会同时更新。


文章转载自测试前沿布道者,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论