如果重启之后,gitlab-ctl restart报“runsv no running”错,先运行下面命令

  1. systemctl start gitlab-runsvdir.service

0、配置外部nginx

打开gitlab配置文件

  1. vim /etc/gitlab/gitlab.rb

修改配置项

  1. #禁用自带nginx
  2. nginx['enable'] = false
  3. #指定nginx的用户名,一般linux中默认的nginx用户名都是nobody
  4. web_server['external_users'] = ['nobody']
  5. # 添加nginx地址到信任列表,我这里是127.0.0.1
  6. gitlab_rails['trusted_proxies'] = ['127.0.0.1']
  7. #监听tcp
  8. gitlab_workhorse['listen_network'] = "tcp"
  9. #配置gitlab的地址和端口
  10. gitlab_workhorse['listen_addr'] = "127.0.0.1:28080"

重新配置并且重启gitlab

  1. gitlab-ctl reconfigure
  2. gitlab-ctl restart

1、配置gitlab发送邮件

打开gitlab配置文件

  1. vim /etc/gitlab/gitlab.rb

修改配置项

  1. gitlab_rails['smtp_enable'] = true
  2. gitlab_rails['smtp_address'] = "smtp.163.com"
  3. gitlab_rails['smtp_port'] = 465
  4. gitlab_rails['smtp_user_name'] = "XXX@163.com"
  5. gitlab_rails['smtp_password'] = "XXX"
  6. gitlab_rails['smtp_domain'] = "163.com"
  7. gitlab_rails['smtp_authentication'] = "login"
  8. gitlab_rails['smtp_enable_starttls_auto'] = true
  9. gitlab_rails['smtp_tls'] = true
  10.  
  11. #使用163邮箱时需要修改发信人
  12. gitlab_rails['gitlab_email_from'] = 'fiveflashes@163.com'

重新配置gitlab

  1. gitlab-ctl reconfigure

测试能否发邮件

  1. gitlab-rails console
  2. Notify.test_email('收件人地址','测试标题','测试内容').deliver_now

2、配置GitLab仓库路径

创建自己想要做仓库的文件夹

  1. mkdir -p /usr/local/data/git-data

打开gitlab配置文件

  1. vim /etc/gitlab/gitlab.rb

找到这一段,去掉注释,并且将地址改为之前新建的目录

  1. git_data_dirs({
  2. "default" => {
  3. "path" => "/usr/local/data/git-data"
  4. }
  5. })

重新配置gitlab并且重启gitlab(这一步适合不需要旧仓库的数据,如果需要旧仓库数据的,使用下一步的代码)

  1. gitlab-ctl reconfigure
  2. gitlab-ctl restart

如果在之前的路径上已经有仓库了,可以使用下面的代码移过来

  1. sudo gitlab-ctl stop
  2. sudo rsync -av /var/opt/gitlab/git-data/repositories /usr/local/data/git-data
  3. sudo gitlab-ctl reconfigure
  4. sudo ls /usr/local/data/git-data
  5. sudo gitlab-ctl start

3、配置自己的redis

打开gitlab配置文件,修改配置项

  1. vim /etc/gitlab/gitlab.rb
  1. # 禁止使用内部redis
  2. redis['enable'] = false
  3.  
  4. # 配置redis的ip和端口
  5. gitlab_rails['redis_host'] = '127.0.0.1'
  6. gitlab_rails['redis_port'] = 6379
  7.  
  8. # 配置redis的密码,如果需要的话
  9. gitlab_rails['redis_password'] = '<redis_password>'

重新配置并且重启gitlab

  1. gitlab-ctl reconfigure
  2. gitlab-ctl restart

4、配置外部postgresql

官方文档地址:https://docs.gitlab.com/omnibus/settings/database.html#using-a-non-packaged-postgresql-database-management-server

准备工作,创建gitlab的数据库和安装pg的扩展

  1. #更新yum
  2. sudo yum update
  3. #查找yum list 里的 contrib
    yum search contrib
  4. #安装自己pg版本对应的contrib
  5. yum install postgresql13-contrib.x86_64
  6. #进入系统的psql环境
  7. sudo -u postgres psql
  8. #创建gitlab的pg用户
  9. create user gitlab with password '12345678';
  10. #创建数据库gitlabhq_production
  11. create database gitlabhq_production OWNER gitlab;
  12. #将gitlabhq_production库的所有权赋值给gitlab
  13. GRANT ALL PRIVILEGES ON DATABASE gitlabhq_production TO gitlab;
  14. #进入到gitlab的数据数
  15. \c gitlabhq_production
  16. #为gitlab的数据库安装扩展btree_gist
  17. CREATE EXTENSION IF NOT EXISTS btree_gist;
    #为gitlab的数据库安装扩展pg_trgm
    CREATE EXTENSION IF NOT EXISTS pg_trgm;

打开配置文件,修改配置信息

  1. vim /etc/gitlab/gitlab.rb

  1. postgresql['enable'] = false
  2. gitlab_rails['db_adapter'] = "postgresql"
  3. gitlab_rails['db_encoding'] = "utf8"
  4. # gitlab_rails['db_collation'] = nil
  5. gitlab_rails['db_database'] = "gitlabhq_production"
  6. gitlab_rails['db_username'] = "gitlab"
  7. gitlab_rails['db_password'] = "12345678"
  8. gitlab_rails['db_host'] = "127.0.0.1"
  9. gitlab_rails['db_port'] = 5432

重新配置gitlab并且重启

  1. gitlab-ctl reconfigure
  2. gitlab-ctl restart

如果reconfigure时提示schema重复,则去pg中删除对应的schema。

Centos GitLab 配置的更多相关文章

  1. gitlab centos 安装配置运维笔记

    写在前面 如果你需要一个git服务器,为企业或自己的团队托管代码而又不希望将代码仓库存储到第三方.你可以在自己的服务器上搭建一个gitlab. 本文为我在最初安装配置gitlab服务器的时候留存的笔记 ...

  2. CentOS gitlab 安装配置

    CentOS gitlab 安装配置 2018-11-02 11:23:09   Visit  5 在/etc/yum.repos.d 目录下创建文件gitlab-ce.repo,使用国内的安装源 b ...

  3. Windows中使用TortoiseGit提交项目到GitLab配置

    下文来给各位介绍Windows中使用TortoiseGit提交项目到GitLab配置过程,下在全部图片希望对各位带来方便面. Gitlab默认的配置推荐使用shell命令行与server端进行交互,作 ...

  4. Centos网络配置

    网上搜索:centos网络配置的方法,主要包括dns.网关.IP地址,主要是配置resolv.conf\network\ifcfg-eth0这些网络配置文件. 稍后我会就centos7的网络配置进行实 ...

  5. 阿里云服务器Linux CentOS安装配置(零)目录

    阿里云服务器Linux CentOS安装配置(零)目录 阿里云服务器Linux CentOS安装配置(一)购买阿里云服务器 阿里云服务器Linux CentOS安装配置(二)yum安装svn 阿里云服 ...

  6. 阿里云服务器Linux CentOS安装配置(九)shell编译、打包、部署

    阿里云服务器Linux CentOS安装配置(九)shell编译.打包.部署 1.查询当前目录以及子目录下所有的java文件,并显示查询结果 find . -name *.java -type f - ...

  7. 阿里云服务器Linux CentOS安装配置(八)nginx安装、配置、域名绑定

    阿里云服务器Linux CentOS安装配置(八)nginx安装.配置.域名绑定 1.安装nginx yum -y install nginx 2.启动nginx service nginx star ...

  8. 阿里云服务器Linux CentOS安装配置(七)域名解析

    阿里云服务器Linux CentOS安装配置(七)域名解析 1.购买域名 登录阿里云,左侧菜单点击[域名],然后[域名注册],完成域名购买.(一般首年45元) 2.添加域名解析 在域名列表里点击你的域 ...

  9. 阿里云服务器Linux CentOS安装配置(六)resin多端口配置、安装、部署

    阿里云服务器Linux CentOS安装配置(六)resin多端口配置.安装.部署 1.下载resin包 http://125.39.66.162/files/2183000003E08525/cau ...

随机推荐

  1. SQL语句中case,when,then的用法

    用法如下bai: 复制代码 SELECT s.s_id, s.s_name, s.s_sex, CASE WHENs.s_sex='1'THEN'男' WHENs.s_sex='2'THEN'女' E ...

  2. DVWA Brute Force:暴力破解篇

    DVWA Brute Force:暴力破解篇 前言 暴力破解是破解用户名密码的常用手段,主要是利用信息搜集得到有用信息来构造有针对性的弱口令字典,对网站进行爆破,以获取到用户的账号信息,有可能利用其权 ...

  3. 1.第一个QT程序

    第一个QT程序 应用程序类QApplication 窗口类MyWidget 进入事件循环 a.exec() 头文件 mywidget.h QApplication 文件Demo_pro 我怎么知道我用 ...

  4. JVM内存设置多大合适?Xmx和Xmn如何设置?

    JVM内存设置多大合适?Xmx和Xmn如何设置?   问题:新上线一个java服务,或者是RPC或者是WEB站点, 内存的设置该怎么设置呢?设置成多大比较合适,既不浪费内存,又不影响性能呢? 分析:依 ...

  5. 异步技巧之CompletableFuture

    摘自--https://juejin.im/post/5b4622df5188251ac9766f47 异步技巧之CompletableFuture 1.Future接口 1.1 什么是Future? ...

  6. sprignAOP那些术语

    那些AOP术语 初看这么多术语,一下子都不好接受,慢慢来,很快就会搞懂.通知.增强处理(Advice) 就是你想要的功能,也就是上说的安全.事物.日志等.你给先定义好,然后再想用的地方用一下.包含As ...

  7. Mono for android,Xamarin点击事件的多种写法

    (一)原本java的写法(相信很多是学过java的): 需要实现接口View.IOnClickListener,最好也继承类:Activity,因为View.IOnClickListener接口又继承 ...

  8. python安装库报错的处理方法

    在安装python map库时遇到了还多问题,找了好的方法都没有安装成功,最后改安装basemap库参考了了:https://www.jb51.net/article/147780.htm一文操作,最 ...

  9. 计算-服务器最大并发量-http协议请求-以webSphere服务器为例-考虑线程池

    请求的处理流程 广域网上有大量的并发用户同时访问Web服务器,Web服务器传递请求给应用服务器(Web容器),Web容器传递请求给EJB容器,然后EJB容器发送数据库连接请求给数据库. 请求的处理流程 ...

  10. .NET Core 中的日志与分布式链路追踪

    目录 .NET Core 中的日志与分布式链路追踪 .NET Core 中的日志 控制台输出 非侵入式日志 Microsoft.Extensions.Logging ILoggerFactory IL ...