热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

Gitlab上采用rpm方式快速安装的操作记录

之前梳理了一篇Gitlab的安装CI持续集成系统环境---部署Gitlab环境完整记录,但是这是bitnami一键安装的,版本比较老。下面介绍使用rpm

 

之前梳理了一篇Gitlab的安装CI持续集成系统环境---部署Gitlab环境完整记录,但是这是bitnami一键安装的,版本比较老。下面介绍使用rpm包安装Gitlab,下载地址:https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el6/,针对centos6和centos7的各版本Gitlab下载。如果下载不下来或者下载巨慢,可以尝试:清华大学镜像

一、下面记录centos6.9系统下的Gitlab安装过程(最好找一台环境比较干净的机器):

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
1)配置系统防火墙,把HTTP和SSH端口开放(关闭iptables或者开放ssh).
[root@gitlab ~]# /etc/init.d/iptables stop
[root@gitlab ~]# yum install curl openssh-server postfix cronie
[root@gitlab ~]# service postfix start
[root@gitlab ~]# chkconfig postfix on
[root@gitlab ~]# lokkit -s http -s ssh        //如果iptables关闭了,这条命令就无需执行了。这条命令是用来设置防火墙的,开放http和ssh访问端口
2)下载gitlab的rpm安装包
已提前下载放到百度云里:
http://pan.baidu.com/s/1c2EPRLQ
提前密码:qys2
[root@gitlab ~]# rpm -ivh gitlab-ce-9.4.5-ce.0.el6.x86_64.rpm --force
安装后的gitlab默认路径是/opt/gitlab(程序路径)、 /var/opt/gitlab(配置文件路径)。
3) 接着进行配置
[root@gitlab ~]# gitlab-ctl reconfigure
上面配置命令执行后,如没有报错,就说明gitlab配置成功。配置后会生成各应用服务配置文件,放在/opt/gitlab/etc下,日志路径为/var/log/gitlab/
4)然后启动gitlab
[root@gitlab ~]# gitlab-ctl start
[root@gitlab ~]# gitlab-ctl status
5)最后就可以使用http://localhost顺利访问Gitlab了。整个安装过程大概10分钟搞定(rpm包下载比较费时间)

二、Gitlba安装后的几个细节的配置

1
Gitlab如果是编译安装的默认管理员账号密码是:admin@local.host|5iveL!fe,如果是 rpm包安装则管理员账号密码是root|5iveL!fe

Gitlab安装后,http://localhost访问,首次访问的时候,如果不知道管理员账号和密码,尽管可以注册用户,但注册的用户都不是管理员。这个时候,可以重置管理员的密码,管理员默认是root。
重置管理员密码(密码要是8位)的方法如下:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
[root@gitlab ~]# gitlab-rails console production
Loading production environment (Rails 4.1.1)
irb(main):001:0> user = User.where(id:1).first
irb(main):002:0> user.password='12345678'
irb(main):003:0> user.save!
这样,Gitlab管理员的登录权限就是:root/12345678,管理员的默认邮箱是部署机的本机邮箱,也是从本机发的邮件。这也就是为什么在开头要安装postfix。
修改下面几处,否则邮件发出后,点击会报错。下面的192.168.1.24是部署机ip。
[root@gitlab ~]# cd /opt/gitlab/
[root@gitlab gitlab]# cat embedded/service/gitlab-rails/config/gitlab.yml|grep 192.168.1.24
    host: 192.168.1.24
    email_from: gitlab@192.168.1.24
[root@gitlab gitlab]# cd /var/opt/gitlab/
[root@gitlab gitlab]# cat ./gitlab-rails/etc/gitlab.yml|grep 192.168.1.24
    host: 192.168.1.24
    email_from: gitlab@192.168.1.24
最后重启gitlab-ctl生效
[root@gitlab gitlab]# gitlab-ctl restart

在管理员账号(root)登录后,先把"注册"功能关了,这样就只能在管理员账号下创建用户。关闭注册功能方法:
访问http://192.168.1.24/admin/application_settings,如下:

关闭"Sign-up enabled"功能(特别注意:Sign-in enabled登录功能不要关闭了,看清楚!)

 三、Gitlab批量添加账号

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
[root@gitlab ~]# cat gitlab.sh
#!/bin/bash
#批量创建gitlab用户
userinfo="userinfo.text"
while read line
do
    password=`echo $line | awk '{print $1}'`
    mail=`echo $line | awk '{print $2}'`
    username=`echo $line | awk '{print $3}'`
    name=`echo $line | awk '{print $4}'`
    curl -d "reset_password=$password&email=$mail&username=$username&name=$name&private_token=ucUctguWU6-2qrvRnGiB" "http://192.168.1.24/api/v4/users"
done <$userinfo
[root&#64;gitlab ~]# cat userinfo.text
1  zhanjiang.feng&#64;wang.com zhanjiang.feng zhanjiang.feng
1  hongkang.yan&#64;wang.com hongkang.yan hongkang.yan
1  yansong.wang&#64;wang.com yansong.wang yansong.wang
1  bo.xue&#64;wang.com bo.xue bo.xue
1  junlong.li&#64;wang.com junlong.li junlong.li
1  luyu.cao&#64;wang.com luyu.cao luyu.cao
1  xueqing.wang&#64;wang.com xueqing.wang xueqing.wang
1  xu.guo&#64;wang.com xu.guo xu.guo
1  bing.xing&#64;wang.com bing.xing bing.xing
1  mengmeng.li&#64;wang.com linan linan

注意&#xff1a;上面userinfo.txt文件里的四行分别表示密码&#xff0c;邮箱&#xff0c;用户名&#xff0c;别名。上面命令执行后&#xff0c;就可以批量创建用户了!
其中密码用1表示重置密码&#xff0c;也就是用户创建之后&#xff0c;会给用户邮箱发送两封邮件&#xff1a;
-> 一封确认绑定邮箱的邮件&#xff0c;一定要点击这个邮件里的confirm确认地址&#xff08;否则登录无效&#xff09;&#xff1b;
-> 另一封是重置用户密码的邮件。重置后就可以使用邮箱或用户名登陆了。

 注意上面脚本中的private_token&#xff08;这个很重要&#xff0c;否则批量创建不了用户&#xff09;的值是从gitlab的管理员账号登录后的"settings-Account"界面里找到的&#xff0c;如下&#xff1a;

 访问脚本中gitlab的用户接口地址http://192.168.1.24/api/v4/users&#xff0c;试试能否访问&#xff01;

 -----------------------------------------------------------------------------Email的smtp设置-------------------------------------------------------------------------------------------

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
上面默认是用部署机本地的postfix发邮件。如果要想使用第三方邮箱发邮件&#xff0c;这就需要修改/var/opt/gitlab/gitlab-rails/etc/unicorn.rb文件&#xff1a;
[root&#64;gitlab ~]# # cat /etc/gitlab/gitlab.rb.bak22|grep -v "^#"|grep -v "^$"
external_url &#39;http://192.168.1.24&#39;
gitlab_rails[&#39;gitlab_email_from&#39;] &#61; &#39;wangshibohaha&#64;163.com&#39;
gitlab_rails[&#39;smtp_enable&#39;] &#61; true
gitlab_rails[&#39;smtp_address&#39;] &#61; "smtp.163.com"
gitlab_rails[&#39;smtp_port&#39;] &#61; 25
gitlab_rails[&#39;smtp_user_name&#39;] &#61; "wangshibohaha&#64;163.com"
gitlab_rails[&#39;smtp_password&#39;] &#61; "*******"
gitlab_rails[&#39;smtp_domain&#39;] &#61; "163.com"
gitlab_rails[&#39;smtp_authentication&#39;] &#61; "login"
gitlab_rails[&#39;smtp_enable_starttls_auto&#39;] &#61; true
user[&#39;git_user_email&#39;] &#61; "wangshibohaha&#64;163.com"
由于该文件会影响gitlab-ctl指令&#xff0c;如果改动了则需要重新运行配置。
注意这个重新配置的动作要在上面细节配置之前&#xff0c;否则上面的配置在reconfigure之后就会被覆盖到默认状态&#xff01;
[root&#64;gitlab ~]#  gitlab-ctl reconfigure
--------------------------------------------------------------------------------------------
上面使用的是163邮箱&#xff0c;下面再贴下公司企业邮箱&#xff08;用的是Coremail论客邮件系统&#xff0c;注意邮箱的smtp地址要正确&#xff09;的配置&#xff1a;
[root&#64;gitlab ~]# cat /etc/gitlab/gitlab.rb|grep -v "^#"|grep -v "^$"
external_url &#39;http://192.168.1.24&#39;
gitlab_rails[&#39;gitlab_email_from&#39;] &#61; &#39;notice&#64;vdholdhaha.com&#39;
gitlab_rails[&#39;smtp_enable&#39;] &#61; true
gitlab_rails[&#39;smtp_address&#39;] &#61; "smtp.icoremail.net"
gitlab_rails[&#39;smtp_port&#39;] &#61; 25
gitlab_rails[&#39;smtp_user_name&#39;] &#61; "notice&#64;vdholdhaha.com"
gitlab_rails[&#39;smtp_password&#39;] &#61; "notice&#64;123"
gitlab_rails[&#39;smtp_domain&#39;] &#61; "icoremail.net"
gitlab_rails[&#39;smtp_authentication&#39;] &#61; "login"
gitlab_rails[&#39;smtp_enable_starttls_auto&#39;] &#61; true
user[&#39;git_user_email&#39;] &#61; "notice&#64;vdholdhaha.com"

gitlab-ctl的常用命令&#xff1a;
//启动
gitlab-ctl start
//查看运行状态
gitlab-ctl status
//停止
gitlab-ctl stop
//查看错误信息
gitlab-ctl tail
//保存配置
gitlab-ctl reconfigure

***************当你发现自己的才华撑不起野心时&#xff0c;就请安静下来学习吧***************
分类: 版本控制系统
本文转自散尽浮华博客园博客&#xff0c;原文链接&#xff1a;http://www.cnblogs.com/kevingrace/p/5985918.html&#xff0c;如需转载请自行联系原作者



推荐阅读
  • Centos7.6安装Gitlab教程及注意事项
    本文介绍了在Centos7.6系统下安装Gitlab的详细教程,并提供了一些注意事项。教程包括查看系统版本、安装必要的软件包、配置防火墙等步骤。同时,还强调了使用阿里云服务器时的特殊配置需求,以及建议至少4GB的可用RAM来运行GitLab。 ... [详细]
  • Linux如何安装Mongodb的详细步骤和注意事项
    本文介绍了Linux如何安装Mongodb的详细步骤和注意事项,同时介绍了Mongodb的特点和优势。Mongodb是一个开源的数据库,适用于各种规模的企业和各类应用程序。它具有灵活的数据模式和高性能的数据读写操作,能够提高企业的敏捷性和可扩展性。文章还提供了Mongodb的下载安装包地址。 ... [详细]
  • 微软评估和规划(MAP)的工具包介绍及应用实验手册
    本文介绍了微软评估和规划(MAP)的工具包,该工具包是一个无代理工具,旨在简化和精简通过网络范围内的自动发现和评估IT基础设施在多个方案规划进程。工具包支持库存和使用用于SQL Server和Windows Server迁移评估,以及评估服务器的信息最广泛使用微软的技术。此外,工具包还提供了服务器虚拟化方案,以帮助识别未被充分利用的资源和硬件需要成功巩固服务器使用微软的Hyper - V技术规格。 ... [详细]
  • 基于PgpoolII的PostgreSQL集群安装与配置教程
    本文介绍了基于PgpoolII的PostgreSQL集群的安装与配置教程。Pgpool-II是一个位于PostgreSQL服务器和PostgreSQL数据库客户端之间的中间件,提供了连接池、复制、负载均衡、缓存、看门狗、限制链接等功能,可以用于搭建高可用的PostgreSQL集群。文章详细介绍了通过yum安装Pgpool-II的步骤,并提供了相关的官方参考地址。 ... [详细]
  • 搭建Windows Server 2012 R2 IIS8.5+PHP(FastCGI)+MySQL环境的详细步骤
    本文详细介绍了搭建Windows Server 2012 R2 IIS8.5+PHP(FastCGI)+MySQL环境的步骤,包括环境说明、相关软件下载的地址以及所需的插件下载地址。 ... [详细]
  • Windows下配置PHP5.6的方法及注意事项
    本文介绍了在Windows系统下配置PHP5.6的步骤及注意事项,包括下载PHP5.6、解压并配置IIS、添加模块映射、测试等。同时提供了一些常见问题的解决方法,如下载缺失的msvcr110.dll文件等。通过本文的指导,读者可以轻松地在Windows系统下配置PHP5.6,并解决一些常见的配置问题。 ... [详细]
  • 本文介绍了在Windows环境下如何配置php+apache环境,包括下载php7和apache2.4、安装vc2015运行时环境、启动php7和apache2.4等步骤。希望对需要搭建php7环境的读者有一定的参考价值。摘要长度为169字。 ... [详细]
  • 本文介绍了如何使用C#制作Java+Mysql+Tomcat环境安装程序,实现一键式安装。通过将JDK、Mysql、Tomcat三者制作成一个安装包,解决了客户在安装软件时的复杂配置和繁琐问题,便于管理软件版本和系统集成。具体步骤包括配置JDK环境变量和安装Mysql服务,其中使用了MySQL Server 5.5社区版和my.ini文件。安装方法为通过命令行将目录转到mysql的bin目录下,执行mysqld --install MySQL5命令。 ... [详细]
  • 本文讨论了在使用PHP cURL发送POST请求时,请求体在node.js中没有定义的问题。作者尝试了多种解决方案,但仍然无法解决该问题。同时提供了当前PHP代码示例。 ... [详细]
  • 本文介绍了5个基本Linux命令行工具的现代化替代品,包括du、top和ncdu。这些替代品在功能上进行了改进,提高了可用性,并且适用于现代化系统。其中,ncdu是du的替代品,它提供了与du类似的结果,但在一个基于curses的交互式界面中,重点关注占用磁盘空间较多的目录。 ... [详细]
  • docker安装到基本使用
    记录docker概念,安装及入门日常使用Docker安装查看官方文档,在&quot;Debian上安装Docker&quot;,其他平台在&quot;这里查 ... [详细]
  • centos 编译安装 php 5.5,CentOS 5.5上编译安装 PHP 5.3.6
    编译并安装#make&&makeinstall安装结果摘要,里面有几个主要的安装路径变量libtool:install:warning:remembertorunli ... [详细]
  • 图解redis的持久化存储机制RDB和AOF的原理和优缺点
    本文通过图解的方式介绍了redis的持久化存储机制RDB和AOF的原理和优缺点。RDB是将redis内存中的数据保存为快照文件,恢复速度较快但不支持拉链式快照。AOF是将操作日志保存到磁盘,实时存储数据但恢复速度较慢。文章详细分析了两种机制的优缺点,帮助读者更好地理解redis的持久化存储策略。 ... [详细]
  • 本文介绍了Web学习历程记录中关于Tomcat的基本概念和配置。首先解释了Web静态Web资源和动态Web资源的概念,以及C/S架构和B/S架构的区别。然后介绍了常见的Web服务器,包括Weblogic、WebSphere和Tomcat。接着详细讲解了Tomcat的虚拟主机、web应用和虚拟路径映射的概念和配置过程。最后简要介绍了http协议的作用。本文内容详实,适合初学者了解Tomcat的基础知识。 ... [详细]
  • 为PHP5安装curl和gd
    2019独角兽企业重金招聘Python工程师标准一、查看php5是否安装了curl:1在web服务器目录(Ubuntu下通常为varwww ... [详细]
author-avatar
WingKeii-
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有