windows | Mac os | linux | 电脑故障 | 网络知识 | 电脑百科 | 破解软件 | 网页编程 | 电脑配置 |

CentOS系统怎样安装GitLab客户端

CentOS系统怎样安装GitLab客户端?其实在CentOS安装GitLab的方法非常的简单,要安装Ruby环境作为依赖,今天小编与大家分享下CentOS系统安装GitLab客户端的具体操作步骤,有需要的朋友不妨了解下。

CentOS系统安装GitLab客户端方法

一、安装环境

基础操作系统(CentOS 6.5 Minimal)

Ruby (版本: 2.0.0p353+)

创建项目运行用户(创建git账号,方便权限管理)

GitLab Shell(版本:1.8.1)

数据库,采用PostgreSQL(可以支持mysql和PostgreSQL)

GitLab(版本:6-3-stable)

Web服务器,采用nginx(可支持nginx和apache)

防火墙,开放相关端口(iptables)

二、升级更新系统

yum groupinstall "Development Tools" -y

yum update -y

yum install wget vim -y

三、配置安装源

1、下载EPEL的GPG KEY

wget -O /etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-6 httPs://www.fedoraproject.org/static/0608B895.txt

rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-6

rpm -qa gpg*

2、安装epel-release-6-8.noarch package

rpm -Uvh http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm

3、创建PUIAS安装源

vim /etc/yum.repos.d/PUIAS_6_computational.repo

======================

[PUIAS_6_computational]

name=PUIAS computational Base $releasever - $basearch

mirrorlist=http://puias.math.ias.edu/data/puias/computational/$releasever/$basearch/mirrorlist

#baseurl=http://puias.math.ias.edu/data/puias/computational/$releasever/$basearch

gpgcheck=1

gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-puias

=======================

4、下载PUIAS的GPG key

wget -O /etc/pki/rpm-gpg/RPM-GPG-KEY-puias http://springdale.math.ias.edu/data/puias/6/x86_64/os/RPM-GPG-KEY-puias

rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-puias

5、检查是否安装成功

rpm -qa gpg*

yum repolist

四、安装GitLab所需依赖包

yum -y install vim-enhanced readline readline-devel ncurses-devel gdbm-devel glibc-devel tcl-devel openssl-devel curl-devel expat-devel db4-devel byacc sqlite-devel gcc-c++ libyaml libyaml-devel libffi libffi-devel libxml2 libxml2-devel libxslt libxslt-devel libicu libicu-devel system-config-firewall-tui python-devel redis sudo wget crontabs logwatch logrotate perl-Time-HiRes git

五、安装所需服务

1、Redis

chkconfig redis on

service redis start

2、Ruby(记得下载好了,tar一个备份,下载贼慢了)

curl --progress ftp://ftp.ruby-lang.org/pub/ruby/2.0/ruby-2.0.0-p353.tar.gz | tar xz

cd ruby-2.0.0-p353

./configure --prefix=/usr/local/

make && make install

3、检查Ruby是否安装成功,并配置$PATH

which ruby

/usr/local/bin/ruby

ruby -v

ruby 2.0.0p353 (2013-11-22 revision 43784) [x86_64-Linux]

4、Bundle

gem install bundler --no-ri --no-rdoc

六、创建git用户

注:git@#命令行表示是用git用户登录执行命令,其他所有均以root用户执行

adduser --system --shell /bin/bash --comment 'GitLab' --create-home --home-dir /home/git/ git

七、配置GitLab Shell

注:GitLab shell是专门为GitLab开发的提供ssh访问和版本管理的软件

1、下载gitlab-shell

su - git

git@# git clone https://github.com/gitlabhq/gitlab-shell.git

git@# cd gitlab-shell

git@# git checkout v1.9.4

2、修改配置文件

git@# cp config.yml.example config.yml

# Url to gitlab instance. Used for api calls. Should end with a slash.

gitlab_url: "http://yourdomain:8080/"

注:如果gitlab是使用https访问,则需将http替换成https,配置文件中的self_signed_cert要修改成true,否则gitlab shell在通过api和gitlab进行通信的时候就会出现错误,导致项目push出错。因为后面配置web服务器的时候是使用ssl,所以这里要按照ssl的方式配置。

3、安装gitlab-shell

git@# ./bin/install

八、安装PostgreSQL数据库

1、yum安装postgresql

yum install postgresql-server postgresql-devel -y

service postgresql initdb

service postgresql start

chkconfig postgresql on

2、创建数据库和对应用户

su - postgres

psql -d template1

template1=# CREATE USER git WITH PASSWord 'password';

template1=# CREATE DATABASE gitlabhq_production OWNER git;

template1=# q

exit

附:MYSQL安装方法

yum install -y mysql-server mysql-devel

chkconfig mysqld on

service mysqld start

/usr/bin/mysql_secure_installation

mysql -u root -p

CREATE USER 'gitlab'@'localhost' IDENTIFIED BY 'password';

CREATE DATABASE IF NOT EXISTS `gitlabhq_production` DEFAULT CHARACTER SET `utf8` COLLATE `utf8_unicode_ci`;

GRANT SELECT, LOCK TABLES, INSERT, UPDATE, DELETE, CREATE, DROP, INDEX, ALTER ON `gitlabhq_production`.* TO 'gitlab'@'localhost';

九、安装GitLab

1、下载项目

su - git

git@# git clone https://github.com/gitlabhq/gitlabhq.git gitlab

git@# cd /home/git/gitlab

git@# git checkout 6-3-stable

2、配置项目

git@# cp config/gitlab.yml.example config/gitlab.yml

git@# sed -i 's|localhost|your_domain_name|g' config/gitlab.yml

3、创建相关目录,及配置所有者权限

git@# chown -R git log/

git@# chown -R git tmp/

git@# chmod -R u+rwX log/

git@# chmod -R u+rwX tmp/

git@# mkdir /home/git/gitlab-satellites

git@# mkdir tmp/pids/ tmp/sockets

git@# chmod -R u+rwX tmp/pids/

git@# chmod -R u+rwX tmp/sockets/

git@# mkdir public/uploads

git@# chmod -R u+rwX public/uploads

git@# cp config/unicorn.rb.example config/unicorn.rb

4、配置unicorn.rb

git@# vim config/unicorn.rb

listen "yourdomain:8080", :tcp_nopush => true

5、全局配置

git@# git config --global user.name "GitLab"

git@# git config --global user.email "gitlab@your_domain_name"

git@# git config --global core.autocrlf input

6、修改数据库配置文件

git@# cp config/database.yml.postgresql config/database.yml

git@# vim config/database.yml

git@# chmod o-rwx config/database.yml

十、安装gems

gem install charlock_holmes --version '0.6.9.4'

十一、安装postgresql包

git@# cd /home/git/gitlab/

git@# bundle install --deployment --without development test mysql

注:mysql包安装方法

git@# bundle install --deployment --without development test postgres puma aws ( mysql包)

十二、初始化数据和激活高级功能

git@# cd /home/git/gitlab

git@# bundle exec rake gitlab:setup RAILS_ENV=production

生成默认的管理账号

admin@local.host

5iveL!fe

十三、安装GitLab启动脚本

1、下载启动脚本

wget -O /etc/init.d/gitlab https://raw.github.com/gitlabhq/gitlab-recipes/master/init/sysvinit/centos/gitlab-unicorn

chmod +x /etc/init.d/gitlab

chkconfig --add gitlab

chkconfig gitlab on

2、检查状态

git@# cd gitlab/

git@# bundle exec rake gitlab:env:info RAILS_ENV=production

3、启动gitlab

service gitlab start

4、检查安装信息

git@# cd gitlab/

git@# bundle exec rake gitlab:check RAILS_ENV=production

十四、安装web服务 (nginx)

1、安装nginx

yum -y install nginx

chkconfig nginx on

mkdir /etc/nginx/sites-available

mkdir /etc/nginx/sites-enabled

wget -O /etc/nginx/sites-available/gitlab https://raw.github.com/gitlabhq/gitlab-recipes/master/web-server/nginx/gitlab-ssl

ln -sf /etc/nginx/sites-available/gitlab /etc/nginx/sites-enabled/gitlab

2、修改配置文件

vim /etc/nginx/nginx.conf

include /etc/nginx/conf.d/*.conf;

改为

include /etc/nginx/sites-enabled/*;

vim /etc/nginx/sites-available/gitlab

server_name git.example.com;

改为

server_name youdomain.com;

3、将nginx加入git用户组

usermod -a -G git nginx

chmod g+rx /home/git/

4、添加ssl证书

mkdir /etc/nginx/ssl

cd /etc/nginx/ssl

openssl req -new -x509 -nodes -days 3560 -out gitlab.crt -keyout gitlab.key

5、启动nginx

service nginx start

6、要看监听的端口是否启动

nestat -nap | grep nginx

十五、开放相关端口和服务

lokkit -s http -s https -s ssh

service iptables restart

十六、系统相关配置

1、主机hosts配置

vim /etc/hosts

yourIP yourdomain

2、关闭selinux

setenforce 0

访问gitlab首页 http://yourdomain.com/

十七、邮箱配置

1、后期再配置,待续.........

十八、GitLab Windows客户端

1、TortoiseGit

2、msysgit

问题处理:

1、检测API-access失败

解决方法:

查看三个配置文件

vim gitlab/config/unicorn.rb #配置ruby提供的服务端口,ip

listen "gitlab.test.com:8080", :tcp_nopush => true

vim gitlab-shell/config.yml #配置gitlab-shell要调用的API接口

gitlab_url: "http://gitlab.test.com:8080/"

vim gitlab/config/gitlab.yml #配置gitlab服务的端口,ip

host: gitlab.test.com

port: 80

2、启动nginx报错

service nginx start

Starting nginx: nginx: [emerg] unknown directive "ssl_stapling" in /etc/nginx/sites-enabled/gitlab:102

解决方法:

vim /etc/nginx/sites-available/gitlab

注释以下几行

3、登录打开首页显示不完全

解决方法:

vim /etc/nginx/sites-available/gitlab

注释下面几行

/etc/init.d/nginx restart #重启nginx

4、打开首页提示BAD GATEWAY

解决方法:

setenforce 0

看过“CentOS系统怎样安装GitLab客户端”的人还看了:

123
  • CentOS系统怎样安装GitLab客户端 相关内容:
  • Linux GCC常用命令详解
  • 1. 简介 GCC 的意思也只是 GNU C Compiler 而已。经过了这么多年的发展,GCC 已经不仅仅能支持 C 语言;它现在还支持 Ada 语言、C++ 语言、Java 语言、Objective C 语言、Pascal 语言、COBOL语言,以及支持函数式编程和逻辑编程的 Mercury 语言,等等。而 GCC 也不再单只是 GNU...

  • Linux系统已经融入了我们的生活!论Linux系统的
  • 你知道操作系统都有些什么吗?Windows啊。 这是我在上大学之前的问答,我当时认为只一种叫做Windows的操作系统,可是我错了,当我上大学以后,作为计算机专业的一名学生的时候我第一次接触到了除Windows以外的操作系统,那就是linux,之后我便自己装了个虚拟机在上面又安装了linux发...

  • Linux下使用Speedtest测试网速的方法
  • Speedtest是用来测试网络性能的开源软件,在Linux下面安装Speedtest可以用来测试网络出口的上传和下载速度,帮助排查网络方面导致的故障。 Speedtest介绍 由于公司几个项目用户访问的时候响应较慢,项目本身没问题,服务及调用的接口返回信息都比较正常,猜想是网络方面造成的瓶...

  • 使用Git管理二进制大对象的方法
  • 通过这系列的前六篇文章,我们已经学会使用 Git 来对文本文件进行版本控制的管理。我们不禁要问,还有二进制文件呢,也可进行进行版本控制吗?答案是肯定的,Git 已经有了可以处理像多媒体文件这样的二进制大对象块(blob)的扩展。因此,今天我们会学习使用 Git 来管理所谓的二进制资...

  • Linux下软件包类故障排错方案详解
  • 软件包类故障在Linux系统中比较常见,例如:需要编译源码包程序时系统中没有安装gcc编译工具,安装RPM软件包时有未解决的依赖关系,程序库文件或头文件的安装路径不正确等,软件包类故障产生的原因非常多,通常只需要根据相应的错误提示信息,确认安装好编译环境,找到所需要的依赖软件...

  • Linux下垃圾文件的详解
  • Linux 计算机安装后,在我们不断的使用过程中,因为添加、删除软件和上网冲浪、调试程序等行为,硬盘中会产生各种各样的垃圾文件,而随着这些垃圾文件的不断膨胀,它们不仅会平白吞噬掉我们宝贵的硬盘空间,更会拖累机器的运行速度,影响我们的工作效率。本文介绍一下给 Linux 系统减...

  • shell语法检查模式详解
  • 启用 verbose 调试模式 在进入本指导的重点之前,让我们简要地探索下 verbose 模式。它可以用 -v 调试选项来启用,它会告诉 shell 在读取时显示每行。要展示这个如何工作,下面是一个示例脚本来批量将 PNG 图片转换成 JPG 格式。 将下面内容输入(或者复制粘贴)到一个文件中。...

  • 使用Glyphr如何玩转Linux字体?
  • LibreOffice 提供了丰富的字体,并且用户可以自由选择和下载增加自己的字体。然而,就算是你想创造自己的字体,也可以非常容易地使用 Glyphr 来做到。Glyphr 是一个新开源的矢量字体设计器,通过直观而易用的图形界面和丰富的功能集可以完成字体设计的方方面面。虽然这个应用还...

  • 发布时间:2016-11-30 16:23:00 查看更多>>

    linux