目前系统的环境
centos6.4 32位
已经安装MysqL Nginx

下载并安装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*

安装epel-release-6-8.noarch包

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

PS.不要在意x86_64(64位),在i686(32位)的机器上一样能使用

增加PUIAS安装源

vi /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

下载并安装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

安装GitLab的所需依赖包和工具

su -
yum -y groupinstall 'Development Tools'
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

配置redis

chkconfig redis on
service redis start

安装Ruby

su -
mkdir /tmp/ruby && cd /tmp/ruby
curl --progress ftp://ftp.ruby-lang.org/pub/ruby/2.3/ruby-2.3.0.tar.gz| tar xz
cd ruby-2.3.0
./configure --prefix=/usr/local/
make && make install

PS.安装完成后,重新登录终端确保$PATH生效,检测ruby的安装成功与否:

ruby -v

安装bundle

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

创建用户git

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

PS.因为git用户不需要登录,所以这里不需要设置git的密码

下载gitlab shell

https://github.com/gitlabhq/gitlab-shell/tree/v2.7.2
我这里用游览器下载的然后传到服务器上,然后修改权限

chmod -R 777 /home/git/gitlab-shell

也可以用git下载,但是比较慢

su - git
git clone https://github.com/gitlabhq/gitlab-shell.git
cd gitlab-shell
git checkout v3.4.0

我这里安装的是2.7.2

配置gitlab shell

cd gitlab-shell
cp config.yml.example config.yml

这里最重要的是将gitlab_url修改成gitlab的访问域名。比如:http://git.PHPsong.com/

修改hosts

vi /etc/hosts

添加

127.0.0.1 git.PHPsong.com

安装一些需要的目录和文件

./bin/install

安装GitLab

下载地址
https://github.com/gitlabhq/gitlabhq/tree/7-14-stable
我这里用游览器下载的然后传到服务器上,然后修改权限

chmod -R 777 /home/git/gitlab

也可以用git下载,但是比较慢

su - git
git clone https://github.com/gitlabhq/gitlabhq.git gitlab
cd /home/git/gitlab
git checkout 7-14-stable

配置项目

cd /home/git/gitlab
cp config/gitlab.yml.example config/gitlab.yml
sed -i 's|localhost|git.PHPsong.com|g' config/gitlab.yml

su -
cd /home/git/gitlab
chown -R git log/
chown -R git tmp/
chmod -R u+rwX log/
chmod -R u+rwX tmp/
chmod -R u+rwX tmp/pids/
chmod -R u+rwX tmp/sockets/
chmod -R u+rwX public/uploads

su - git
mkdir /home/git/gitlab-satellites

cd /home/git/gitlab
cp config/unicorn.rb.example config/unicorn.rb

配置数据库访问文件

cp config/database.yml.MysqL config/database.yml
vi config/database.yml

比如我的配置

#
# PRODUCTION
#
production:
  adapter: MysqL2
  encoding: utf8
  collation: utf8_general_ci
  reconnect: false
  database: gitlabhq_production
  pool: 10
  username: root
  password: "123456"
  # host: localhost
  # socket: /tmp/MysqL.sock

PS.MysqL的引擎必须是Innodb,myisam的安装会失败,可以用MySQL命令show engines查看

安装Gems

su -
gem install charlock_holmes

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

PS.修改gitlab目录下的Gemfile和Gemfile.lock问首行的域名rubygems.org修改成ruby.taobao.org,修改之后执行名的命令就会比较快

su - git
cd /home/git/gitlab/
bundle install --deployment --without development test postgres puma aws
bundle exec rake gitlab:setup RAILS_ENV=production

PS.安装的时候出现如下错误

解决方法
安装nodejs http://www.PHPsong.com/2117.html
执行

gem install execjs
gem install therubyracer

安装成功之后会显示用户名和密码
login………root
password……5iveL!fe
在执行下面的命令,不然没有样式

bundle exec rake assets:precompile RAILS_ENV=production

安装启动脚本

su -
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

启动GitLab实例

service gitlab start

Nginx配置

su -
cp /home/git/gitlab/lib/support/Nginx/gitlab /usr/local/Nginx/conf/vhost/git.PHPsong.com.conf

修改一下里面的配置

vi /usr/local/Nginx/conf/vhost/git.PHPsong.com.conf
mkdir /var/log/Nginx

里面的内容主要修改端口和域名,如我下面的配置

#  listen 0.0.0.0:80 default_server;
#  listen [::]:80 default_server;
listen 80;
server_name git.PHPsong.com; ## Replace this with something like gitlab.example.com
检查一下Nginx配置
Nginx -t

我这里的Nginx是www的用户启动

ps aux|grep Nginx

将www加入git用户组

usermod -a -G git www

PS.如果查看/var/log/Nginx/gitlab_error.log发现错误connect() to unix:/home/git/gitlab/tmp/sockets/gitlab-workhorse.socket Failed错误

解决方法

vi /usr/local/Nginx/conf/vhost/git.PHPsong.com.conf

把修改成

upstream gitlab-workhorse {
#  server unix:/home/git/gitlab/tmp/sockets/gitlab-workhorse.socket fail_timeout=0;
  server unix:/home/git/gitlab/tmp/sockets/gitlab.socket fail_timeout=0;
}

重要错误日志文件

/home/git/gitlab/log/unicorn.stderr.log
/var/log/Nginx/gitlab_error.log

参考网址: http://my.oschina.net/wzlee/blog/262181

centos 32位下安装gitlab的更多相关文章

  1. 在Xcode中安装的git中禁用osxkeychain凭证帮助程序

    解决方法如果您的问题主要关注的是安全性,并且您希望每次都输入密码,那么我会接受钥匙串以适应您的目标>进入osx钥匙串应用程序,>如果您使用的是https,请查找服务器名称>通过单击更改其设置,并在选项卡“访问控制”标记“询问钥匙串密码”下>如果需要,请从列入白名单的应用程序列表中删除git-credential-osxkeychain应用程序.请注意,在Linux上,默认行为也是自动发送凭据.

  2. ios – Xcode Server 4.0 git从构建触发脚本推送

    我为一个托管在github上的项目安装了一个XcodeBot.我按照步骤和设置机器人来使用我现有的SSH密钥.验证成功,项目结算和建立.然后,我在预触发器操作中添加了一个shell脚本,它增加了plist中的版本,将其标记,并将该更改提交到github.但是当我尝试从shell脚本执行gitpush时,我得到:–推送到git@github.com:spex-app/spex-ios.git权限被拒

  3. xcode – 为什么Jenkins在我的Mac上运行不会连接到本地的git repo?

    我正在尝试使用Jenkins实现自动化构建,用于我的iOS项目.我添加了Git插件,但是一旦我尝试将git的URL放在项目的git配置中,它会在下面的屏幕截图中显示错误.这里Jenkins不能从repo克隆到其工作空间.解决方法在大多数情况下,gitbarerepo有扩展名.git我的意思是(其他)/test1看起来不正确,我认为应该是(其他)/test1.git在我的mac上有同样的错误.

  4. 哪些Xcode项目文件可以从我的git repo中排除?

    我正在开发一个iOS项目,并使用git进行版本控制.我正在与另一位开发人员合作.我应该保留哪些Xcode项目文件在repo中,哪些可以排除,这样不会对其他开发者产生负面影响?这里有一些非代码文件,git告诉我已被修改或添加…

  5. xcode – 不能推送到远程git存储库

    所以我一直在麻烦把我最近的提交到我在Bitbucket上设置的远程仓库.我最初使用Xcode,并且已经要求thisquestion,并建议使用终端来推送而不是Xcode.现在,我尝试了终端,但是并没有解决问题.但是当我尝试gitpush时,它确实给了我更详细的错误信息我是这些远程存储库的新手,并且Xcode上的一切都正常工作,所以如果您建议我在终端中执行某些操作,如果您描述了如何执行此操作,这将有

  6. Xcode 4.5自动更改.xib文件

    由于我升级到Xcode4.5,我发现它会自动删除我访问的每个xib文件的一部分.这是一节:我几乎可以这样生活,但是当我再次访问该文件时,我发现还有更多的“自动”更改.他们变得更加多样,难以表征,所以我不会包括例子,除非我真的需要.我不明白这里发生了什么.我正在寻找两个答案之一:>有没有办法禁用这个?>为什么会发生这种情况,有没有办法强制Xcode将这些更改应用于所有xib文件,以便我可以做到这一点?

  7. ios – XCode中的源代码管理是一场噩梦 – 任何人都可以提供建议?

    使用Git与Xcode(4.3)是一个真正的噩梦.这是一个场景…我承诺我的变化–好的.我跳回主人拉动变更.突然间我得到:是吧?解决方法我只是添加这些文件到我的.gitignore文件.没有必要与其他开发人员分享.所以我有:在.gitignore中请注意,您链接的stackoverflow问题说不排除project.pbxproj,但它并不表示不排除*.xcworkspace.但是,我目前没有使用工作区功能.如果您使用工作区功能,则可能需要包含这些文件,但忽略xcuserdata文件.

  8. Xcode表示“未提交的更改”每当我尝试git拉或推

    我在我的项目中使用git,每当我尝试从Xcode中抽出时,我得到“未提交的更改”,并阻止我拉/推.我尝试提交并找到一个扩展名为*.xcuserstate的文件,每当我打开/滚动到Xcode中的任何项目文件时,这个文件被修改.这让我没有任何选择,只能做一个包含该文件的单一提交,该文件用无意义的提交填充git提交日志.这是有办法阻止这种行为吗?

  9. ios – 将watchkit扩展添加到项目之后,以前添加的第三方框架不再起作用

    我有一个正在工作的应用程序,一切都很好.当我转到File->New->Target并添加一个watchkit应用程序/扩展名时,由于“Module”Crashlytics“找不到”,构建立即被破坏.目前,Crashlytics是使用@importCrashlytics访问的,我检查了项目,pbxproj文件具有引用到正确位置的crashlytics框架,Crashlytics.h在项目中可见.我尝试切换到#import“Crashlytics.h”,只是为了看看是否可能与模块有关,而不是简单地导入标题,但

  10. xcode git无法从远程存储库中提取更改

    我正在与另一个开发人员开发iPhone应用程序.我们的git仓库位于远程服务器上.所以我们正在使用我们的工作副本,然后我们一个接一个提交,拉,推,我们把我们的本地工作副本与服务器和彼此同步.一切都很好,直到今天.其他开发人员成功将他的更改推送到远程存储库,现在轮到我了:提交,从远程存储库中提取更改,可能会以某种方式合并它们,然后将我的工作副本推送到服务器.但是当我想要改变(使用xcode的内置gi

随机推荐

  1. 在airgapped(离线)CentOS 6系统上安装yum软件包

    我有一个CentOS6系统,出于安全考虑,它已经被空气泄漏.它可能从未连接到互联网,如果有,它很长时间没有更新.我想将所有.rpm软件包放在一个驱动器上,这样它们就可以脱机安装而无需查询互联网.但是,我在测试VM上遇到的问题是,即使指定了本地路径,yum仍然会挂起并尝试从在线存储库进行更新.另外,有没有办法使用yum-utils/yumdownloader轻松获取该包的所有依赖项和所有依赖项?目前

  2. centos – 命名在日志旋转后停止记录到rsyslog

    CentOS6.2,绑定9.7.3,rsyslog4.6.2我最近设置了一个服务器,我注意到在日志轮换后,named已停止记录到/var/log/messages.我认为这很奇怪,因为所有日志记录都是通过rsyslog进行的,并且named不会直接写入日志文件.这更奇怪,因为我在更新区域文件后命名了HUPed,但它仍然没有记录.在我停止并重新启动命名后,记录恢复.这里发生了什么?

  3. centos – 显示错误的磁盘大小

    对于其中一个磁盘,Df-h在我的服务器上显示错误的空白区域:Cpanel表明它只有34GB免费,但还有更多.几分钟前,我删除了超过80GB的日志文件.所以,我确信它完全错了.fdisk-l/dev/sda2也显示错误:如果没有格式化,我该怎么做才能解决这个问题?并且打开文件描述符就是它需要使用才能做到这一点.所以…使用“lsof”并查找已删除的文件.重新启动写入日志文件的服务,你很可能会看到空间可用.

  4. 如何在centos 6.9上安装docker-ce 17?

    我目前正在尝试在centOS6.9服务器上安装docker-ce17,但是,当运行yuminstalldocker-ce时,我收到以下错误:如果我用跳过的标志运行它我仍然得到相同的消息,有没有人知道这方面的方法?

  5. centos – 闲置工作站的异常负载平均值

    我有一个新的工作站,具有不寻常的高负载平均值.机器规格是:>至强cpu>256GB的RAM>4x512GBSSD连接到LSI2108RAID控制器我从livecd安装了CentOS6.564位,配置了分区,网络,用户/组,并安装了一些软件,如开发工具和MATLAB.在启动几分钟后,工作站负载平均值的值介于0.5到0.9之间.但它没有做任何事情.因此我无法理解为什么负载平均值如此之高.你能帮我诊断一下这个问题吗?

  6. centos – Cryptsetup luks – 检查内核是否支持aes-xts-plain64密码

    我在CentOS5上使用cryptsetupluks加密加密了一堆硬盘.一切都很好,直到我将系统升级到CentOS6.现在我再也无法安装磁盘了.使用我的关键短语装载:我收到此错误:在/var/log/messages中:有关如何装载的任何想法?找到解决方案问题是驱动器使用大约512个字符长的交互式关键短语加密.出于某种原因,CentOS6中的新内核模块在由旧版本创建时无法正确读取512个字符的加密密钥.似乎只会影响内核或cryptsetup的不同版本,因为在同一系统上创建和打开时,512字符的密钥将起作用

  7. centos – 大量ssh登录尝试

    22个我今天登录CentOS盒找到以下内容这是过去3天内的11次登录尝试.WTF?请注意,这是我从我的提供商处获得的全新IP,该盒子是全新的.我还没有发布任何关于此框的内容.为什么我会进行如此大量的登录尝试?是某种IP/端口扫描?基本上有4名匪徒,其中2名来自中国,1名来自香港,1名来自Verizon.这只发生在SSH上.HTTP上没有问题.我应该将罪魁祸首子网路由吗?你们有什么建议?

  8. centos – kswap使用100%的CPU,即使有100GB的RAM也可用

    >Linux内核是否应该足够智能,只需从内存中清除旧缓存页而不是启动kswap?

  9. centos – Azure将VM从A2 / 3调整为DS2 v2

    我正在尝试调整前一段时间创建的几个AzureVM,从基本的A3和标准A3到标准的DS2v2.我似乎没有能力调整到这个大小的VM.必须从头开始重建服务器会有点痛苦.如果它有所不同我在VM中运行CentOS,每个都有一个带有应用程序和操作系统的磁盘.任何人都可以告诉我是否可以在不删除磁盘的情况下删除VM,创建新VM然后将磁盘附加到新VM?

  10. centos – 广泛使用RAM时服务器计算速度减慢

    我在非常具体的情况下遇到服务器速度下降的问题.事实是:>1)我使用计算应用WRF>2)我使用双XeonE5-2620v3和128GBRAM(NUMA架构–可能与问题有关!

返回
顶部