1、安装依赖及gitlab
[root@linux-node1 ~]# yum install -y curl policycoreutils openssh-server openssh-clients postfix
[root@linux-node1 ~]# systemctl start postfix
2、安装gitlab
由于国内网络偏慢,这里使用清华大学的镜像源进行安装gitlab-ce
[root@linux-node1 ~]# cat /etc/yum.repos.d/gitlab-ce.repo
[gitlab-ce]
name=gitlab-ce
baseurl=http://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el7
repo_gpgcheck=
gpgcheck=
enabled=
gpgkey=
[root@linux-node1 ~]# yum makecache
[root@linux-node1 ~]# yum install -y gitlab-ce
3、修改配置文件
[root@linux-node1 ~]# vim /etc/gitlab/gitlab.rb
external_url 'http://192.168.56.11'
[root@linux-node1 ~]# gitlab-ctl reconfigure
这一步时间比较长,耐心等待
gitlab常用命令:
关闭gitlab:[root@linux-node1 ~]# gitlab-ctl stop
启动gitlab:[root@linux-node1 ~]# gitlab-ctl start
重启gitlab:[root@linux-node1 ~]# gitlab-ctl restart
重载配置文件: gitlab-ctl reconfigure
可以使用gitlab-ctl
管理gitlab,例如查看gitlab状态:
[root@linux-node1 ~]# gitlab-ctl status
run: gitaly: (pid ) 176s; run: log: (pid ) 647s
run: gitlab-monitor: (pid ) 174s; run: log: (pid ) 620s
run: gitlab-workhorse: (pid ) 180s; run: log: (pid ) 671s
run: logrotate: (pid ) 654s; run: log: (pid ) 654s
run: nginx: (pid ) 2s; run: log: (pid ) 665s
run: node-exporter: (pid ) 631s; run: log: (pid ) 631s
run: postgres-exporter: (pid ) 171s; run: log: (pid ) 581s
run: postgresql: (pid ) 855s; run: log: (pid ) 855s
run: prometheus: (pid ) 172s; run: log: (pid ) 598s
run: redis: (pid ) 867s; run: log: (pid ) 867s
run: redis-exporter: (pid ) 609s; run: log: (pid ) 609s
run: sidekiq: (pid ) 677s; run: log: (pid ) 677s
run: unicorn: (pid ) 683s; run: log: (pid ) 683s
提示:gitlab需要使用到80端口,所以得保证80端口不被占用 [root@linux-node1 ~]# lsof -i:
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
httpd apache 4u IPv6 0t0 TCP *:http (LISTEN)
httpd apache 4u IPv6 0t0 TCP *:http (LISTEN)
httpd apache 4u IPv6 0t0 TCP *:http (LISTEN)
httpd apache 4u IPv6 0t0 TCP *:http (LISTEN)
httpd root 4u IPv6 0t0 TCP *:http (LISTEN)
httpd apache 4u IPv6 0t0 TCP *:http (LISTEN)
httpd apache 4u IPv6 0t0 TCP *:http (LISTEN)
httpd apache 4u IPv6 0t0 TCP *:http (LISTEN)
httpd apache 4u IPv6 0t0 TCP *:http (LISTEN)
httpd apache 4u IPv6 0t0 TCP *:http (LISTEN)
httpd apache 4u IPv6 0t0 TCP *:http (LISTEN)
[root@linux-node1 ~]# systemctl stop httpd
[root@linux-node1 ~]# gitlab-ctl restart
ok: run: gitaly: (pid ) 0s
ok: run: gitlab-monitor: (pid ) 1s
ok: run: gitlab-workhorse: (pid ) 0s
ok: run: logrotate: (pid ) 1s
ok: run: nginx: (pid ) 0s
ok: run: node-exporter: (pid ) 1s
ok: run: postgres-exporter: (pid ) 0s
ok: run: postgresql: (pid ) 1s
ok: run: prometheus: (pid ) 0s
ok: run: redis: (pid ) 0s
ok: run: redis-exporter: (pid ) 0s
ok: run: sidekiq: (pid ) 0s
ok: run: unicorn: (pid ) 0s
[root@linux-node1 ~]# lsof -i:
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
nginx root 8u IPv4 0t0 TCP *:http (LISTEN)
nginx gitlab-www 8u IPv4 0t0 TCP *:http (LISTEN)
4、浏览器访问登录:
安装完成!
Gitlab+Jenkins学习之路(二)之gitlab部署的更多相关文章
-
Gitlab+Jenkins学习之路(十四)之自动化脚本部署实践
目录 一.环境说明和准备 1.环境说明 2.服务器准备工作 二.发布脚本编写 1.自动化部署流程设计 2.自动化部署脚本编写 三.发布测试 1.开发机和github添加ssh信任 2.克隆项目到开发机 ...
-
Gitlab+Jenkins学习之路(十二)之Maven的私有仓库Nexus
1.什么是Nexus? 在前面进行maven项目的构建中,可以看到在构建的过程中需要安装maven的依赖插件,如图: 而在maven的默认配置中是在官网的*仓库和第三方的maven仓库进行下载,速度 ...
-
Gitlab+Jenkins学习之路(六)之Jenkins部署、升级和备份
一.什么是持续集成? (1)Continuous integration(CI) 持续集成是一种软件开发实践,即团队开发成员经常集成他们的工作,通常每个成员至少集成一次,也就意味着每天可能会发生多次集 ...
-
Gitlab+Jenkins学习之路(八)之发布maven项目及按版本发布
一.什么是Maven maven是一个项目管理和综合工具.Maven提供给开发人员构建一个完整的生命周期框架. 开发团队可以自动完成该项目的基础设施建设,Maven使用标准的目录结构和默认构建生命周期 ...
-
Gitlab+Jenkins学习之路(十一)之Jenkins自动触发构建和发布
思路图: 一.下载gitlab plugin jenkins-->系统管理-->管理插件-->下载并安装gitlab plugin 二.配置gitlab认证 路径:Jenkins-- ...
-
Gitlab+Jenkins学习之路(十三)之发布Java项目到tomcat
一.新建一台虚拟机安装tomcat ()安装JDK 官网下载jdk:http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downl ...
-
Gitlab+Jenkins学习之路(一)之Git基础
1.GIT基础 GIT是一个分布式版本管理系统,速度快,适合大规模,跨地区多人协同开.SVN是一个集中式版本管理系统. (1)GIT生态 GIT分布式版本管理系统 Gitlab git私库解决方 ...
-
Gitlab+Jenkins学习之路(三)之gitlab权限管理--issue管理
1.创建Group,User,Project 创建一个组,组名为java Group path http://192.168.56.11/java Visibility Level: #为权限级别,一 ...
-
Gitlab+Jenkins学习之路(四)之gitlab备份和恢复
gitlab的备份和恢复 (1)创建备份目录,并授权 [root@linux-node1 ~]# mkdir /data/backups/gitlab -p [root@linux-node1 ~]# ...
随机推荐
-
$(";";).click与onclick的区别示例介绍
Html代码: <script type="text/javascript"> $(function(){ $("#btn4").click(fun ...
-
SQL Server中的事务日志管理(6/9):大容量日志恢复模式里的日志管理
当一切正常时,没有必要特别留意什么是事务日志,它是如何工作的.你只要确保每个数据库都有正确的备份.当出现问题时,事务日志的理解对于采取修正操作是重要的,尤其在需要紧急恢复数据库到指定点时.这系列文章会 ...
-
浅谈Objective-C异常处理
-----<a href="http://www.itheima.com" target="blank">Java培训.Android培训.iOS培 ...
-
Objective-C基础笔记一
这里开始了我OC旅程 花了8天的时间粗略的学习了新知识Objective-C(简称OC),虽然只是学习了其中的基础部分,但经过这一周的学习也算是入门了.对面向对象的封装.继承.多态以及其中所包含的方法 ...
-
【转】三十三、Android给ListView设置分割线Divider样式
原文网址:http://www.cnblogs.com/linjiqin/archive/2011/11/12/2246349.html 给ListView设置分割线,只需设置如下两个属性: andr ...
-
Spring-----5、Spring容器中的bean
转载自:http://blog.csdn.net/hekewangzi/article/details/45645831
-
腾讯云分布式高可靠消息队列服务CMQ架构
在分布式大行其道的今天,我们在系统内部.平台之间广泛运用消息中间件进行数据交换及解耦.CMQ是腾讯云内部自研基于的高可靠.强一致.可扩展分布式消息队列,在腾讯内部包括微信手机QQ业务红包.腾讯话费充值 ...
-
【css】过度效果
http://kissygalleryteam.github.io/girlLink/doc/demo/index.html
-
如何在openlayer接入矢量数据
先说矢量数据集接入,我们通过GeoJSON的示例代码(http://openlayers.org/en/latest/examples/geojson.html)了解Openlayers的源代码,确定 ...
-
伊布(ib)
[问题描述]ib 被困在了一个美术馆里,她需要收集美术馆内的每种颜料才能获得逃出美术馆的钥匙美术馆由 n*m 的房间构成,每个房间里有一种颜料,解锁进入后就可以收集.有的房间不能解锁,如果解锁的话会直 ...