• 企业400电话
  • 微网小程序
  • AI电话机器人
  • 电商代运营
  • 全 部 栏 目

    企业400电话 网络优化推广 AI电话机器人 呼叫中心 网站建设 商标✡知产 微网小程序 电商运营 彩铃•短信 增值拓展业务
    centos6搭建gitlab的方法步骤

    前言

    原来的项目放在公网的gitlab上,处于安全考虑,在内网搭建一套,有图形界面,可以直接从外网git导入进来,使用了一下觉得挺方便,把安装流程记录下来,参考官网:https://gitlab.com/gitlab-org/gitlab-recipes/tree/master/install/centos 可以直接移步那里看

    基本环境安装(git\redis\ruby\mysql...)

    yum -y groupinstall 'Development Tools'
    yum -y install readline readline-devel ncurses-devel gdbm-devel glibc-devel tcl-devel openssl-devel curl-devel expat-devel db4-devel byacc sqlite-devel libyaml libyaml-devel libffi libffi-devel libxml2 libxml2-devel libxslt libxslt-devel libicu libicu-devel system-config-firewall-tui redis sudo wget crontabs logwatch logrotate perl-Time-HiRes git cmake libcom_err-devel.i686 libcom_err-devel.x86_64 nodejs
    
    yum -y install python-docutils
    yum -y install postfix
    git --version #安装高于2.7.4的git版本
    yum -y remove git
    yum install zlib-devel perl-CPAN gettext curl-devel expat-devel gettext-devel openssl-devel
    mkdir /tmp/git && cd /tmp/git
    curl --progress https://www.kernel.org/pub/software/scm/git/git-2.9.0.tar.gz | tar xz
    cd git-2.9.0
    ./configure
    make
    make prefix=/usr/local install
    
    yum remove ruby #安装高于2.1版本的ruby,删除老的
    mkdir /tmp/ruby && cd /tmp/ruby
    curl --progress https://cache.ruby-lang.org/pub/ruby/2.1/ruby-2.1.9.tar.gz | tar xz
    cd ruby-2.1.9
    ./configure --disable-install-rdoc
    make
    make prefix=/usr/local install
    gem install bundler --no-doc
    yum install redis mysql
    /Data/apps/mysql/bin/mysqld_safe &
    /Data/apps/mysql/bin/mysql -uroot
    mysql> CREATE DATABASE IF NOT EXISTS `gitlabhq_production` DEFAULT CHARACTER SET `utf8` COLLATE `utf8_unicode_ci`;
    mysql> grant all on gitlabhq_production.* to 'git'@'localhost' identified by 'git';
    
    

    配置redis

    vim /etc/redis.conf

    unixsocket /var/run/redis/redis.sock
    unixsocketperm 0770
    mkdir -p /var/run/redis
    chown redis:redis /var/run/redis
    chmod 755 /var/run/redis
    /etc/init.d/redis start
    usermod -aG redis git
    
    

    配置gitlab相关

    # 下载git,用的国内源。国外的太慢了
    cd /home/git
    sudo -u git -H git clone http://git.oschina.net/qiai365/gitlab-ce gitlab
    cd /home/git/gitlab
    sudo -u git -H cp config/gitlab.yml.example config/gitlab.yml
    sudo -u git -H editor config/gitlab.yml
    # 修改成自己的host host: iaasgit1.prod.bj1
    sudo -u git -H cp config/secrets.yml.example config/secrets.yml
    sudo -u git -H chmod 0600 config/secrets.yml
    sudo chown -R git log/
    sudo chown -R git tmp/
    sudo chmod -R u+rwX,go-w log/
    sudo chmod -R u+rwX tmp/
    sudo chmod -R u+rwX tmp/pids/
    sudo chmod -R u+rwX tmp/sockets/
    sudo -u git -H mkdir public/uploads/
    sudo chmod 0700 public/uploads
    sudo chmod ug+rwX,o-rwx /home/git/repositories/
    sudo chmod -R u+rwX builds/
    sudo chmod -R u+rwX shared/artifacts/
    sudo -u git -H cp config/unicorn.rb.example config/unicorn.rb
    nproc
    sudo -u git -H editor config/unicorn.rb
    sudo -u git -H cp config/initializers/rack_attack.rb.example config/initializers/rack_attack.rb
    sudo -u git -H git config --global core.autocrlf input
    sudo -u git -H git config --global gc.auto 0
    sudo -u git -H cp config/resque.yml.example config/resque.yml
    sudo -u git -H editor config/resque.yml
    

    配置db部分 only for mysql

    sudo -u git cp config/database.yml.mysql config/database.yml
    sudo -u git -H editor config/database.yml #配置production部分的password: "密码"
    sudo -u git -H chmod o-rwx config/database.yml

    安装gitlab相关,并启动

    # install gems
    cd /home/git/gitlab
    sudo -u git -H bundle install --deployment --without development test postgres aws kerberos
    
    # install gitlab shell
    sudo -u git -H bundle exec rake gitlab:shell:install[v3.3.3] REDIS_URL=unix:/var/run/redis/redis.sock RAILS_ENV=production
    sudo -u git -H editor /home/git/gitlab-shell/config.yml
    
    # install gitlab-workhorse
    cd /home/git
    sudo -u git -H git clone https://gitlab.com/gitlab-org/gitlab-workhorse.git
    cd gitlab-workhorse
    sudo -u git -H git checkout v0.7.5
    sudo -u git -H make
    
    # Initialize Database and Activate Advanced Features
    cd /home/git/gitlab
    sudo -u git -H bundle exec rake gitlab:setup RAILS_ENV=production
    
    sudo -u git -H bundle exec rake gitlab:setup RAILS_ENV=production GITLAB_ROOT_PASSWORD=yourpassword GITLAB_ROOT_EMAIL=youremail
    cp lib/support/init.d/gitlab /etc/init.d/gitlab
    cp lib/support/init.d/gitlab.default.example /etc/default/gitlab
    chkconfig gitlab on
    cp lib/support/logrotate/gitlab /etc/logrotate.d/gitlab
    sudo -u git -H bundle exec rake gitlab:env:info RAILS_ENV=production
    sudo -u git -H bundle exec rake assets:precompile RAILS_ENV=production
    service gitlab start
    
    

    配置nginx

    yum install nginx
    cp lib/support/nginx/gitlab /Data/apps/nginx/conf/include/gitlab.conf
    usermod -a -G git nginx
    chmod g+rx /home/git/
    /Data/apps/nginx/conf/include/gitlab.conf #把这个配置里的server_name配置好
    

    最后check一下

    cd /home/git/gitlab
    sudo -u git -H bundle exec rake gitlab:check RAILS_ENV=production
    # 启动gitlab
    /etc/init.d/gitlab restart
    
    # 直接打开server_name对应的url,发现样式都没了,执行
    sudo -u git -H bundle exec rake assets:clean assets:precompile REDIS_URL=unix:/var/run/redis/redis.sock RAILS_ENV=production
    

    最后说明一下

    这个只是记一个流水账,里边可能涉及到权限之类的问题,在确保一下nginx\git互相之间是否有权限,另外用check脚本进行check,提示很友好,一般都能搞定,祝你成功。

    中间使用的yum由于用的是重写打包过的rpm,路径和默认的不同,如果你用的默认的,可以根据自己情况改一下,或者直接参考官网,我这就是官网的一个根据自己环境的阉割版。

    以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

    上一篇:Nginx http升级到https的完整步骤
    下一篇:基于spring-boot和docker-java实现对docker容器的动态管理和监控功能[附完整源码下载]
  • 相关文章
  • 

    © 2016-2020 巨人网络通讯

    时间:9:00-21:00 (节假日不休)

    地址:江苏信息产业基地11号楼四层

    《增值电信业务经营许可证》 苏B2-20120278

    centos6搭建gitlab的方法步骤 centos6,搭建,gitlab,的,方法,