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

接口测试与开发实战(十二)_内部GitLab代码库搭建

475


前言

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

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


安装

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    

安装成功后会提示

查看端口占用信息、看80端口是否被占用

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:8066' # 改成你自己的host 如果是外网可以是外网ip或者域名

## Roles for multi-instance GitLab

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



然后再找到 nginx['listen_port'] 关键字

修改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 

安装好后


浏览器输入http://gitlab.zhank.top 即可进入gitlab 、我这里使用了内网穿透 外网阿里云服务器用的是默认80端口映射到本地服务器8066了因此我不需要在后面加端口

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


cat /etc/gitlab/initial_root_password

登录成功后


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

关闭注册功能



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

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


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


到这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服务命令

3.1 Service Management Commands

这类命令来管理服务


command

function

start

启动所有服务

stop

关闭所有服务

restart

重启所有服务

status

查看所有服务状态

tail

查看日志信息

service-list

列举所有启动服务

graceful-kill

平稳停止一个服务



#启动所有服务
 gitlab-ctl start
#启动单独一个服务
 gitlab-ctl start nginx
#查看日志,查看所有日志
gitlab-ctl tail
#查看具体一个服务的日志,类似tail -f
gitlab-ctl tail nginx


General Commands

全局命令

command

function

help

帮助

reconfigure

修改配置文件之后,重新加载

show-config

查看所有服务配置文件信息

uninstall

卸载这个软件

cleanse

清空gitlab数据

service-list

列举所有启动服务

graceful-kill

平稳停止一个服务




#显示所有服务配置文件
[root@localhost gitlab]#gitlab-ctl show-config
#卸载gitlab
[root@localhost gitlab]#gitlab-ctl uninstall

DatabaseCommands

数据库命令

command

function

pg-upgrade

更新postgresql版本

revert-pg-upgrade

还远先前的(离现在正在使用靠近的版本)一个数据库版本

show-config

查看所有服务配置文件信息

uninstall

卸载这个软件

cleanse

清空gitlab数据

service-list

列举所有启动服务

graceful-kill

平稳停止一个服务



#升级数据库
[root@localhost gitlab]# gitlab-ctl pg-upgrade
Checking for an omnibus managed postgresql: OK
Checking if we already upgraded: OK
The latest version 9.6.1 is already running,nothing to do
#降级数据库版本
[root@localhost gitlab]# gitlab-ctl revert-pg-upgrade



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

评论