安装环境与部署程序:
#数据库服务器操作系统可选用windows server 或 Linux 或 其它类Unix系统。
#数据库系统可选用MySQL或PostgreSQL,这里选用MySQL 5.6
1、系统centos6系列mini安装
2、最终需要安装好redmine、gitlab,nginx在前端做代理,通过socket访问应用(这样https配置更简单)
3、后期计划配置LDAP服务器,用LDAP统一管理账号。(暂未实行)
======
1.0 安装centos6系列(mini安装),配置ip,安装wget、ntp、ntpdate、并同步时间。
yum install -y ntp ntpdate wget
ntpdate pool.ntp.org
clock -w
1.1 升级系统
yum update -y
1.2 安装开发工具包
yum groupinstall 'Development tools' -y
1.3 从mysql官网下载Yum Repository安装文件安装mysql、mysql-devel(选用mysql数据库,数据库和应用不在同一台服务器)
#mysql Yum Repository http://dev.mysql.com/downloads/repo/yum/
rpm -ivh mysql57-community-release-el6-7.noarch.rpm
#安装mysql客户端和mysql开发库
yum install -y mysql mysql-devel
1.4 添加账号git、redmine、redis,并设置密码
#gitlab用git用户
#redmine用redmine用户
#redis用redis用户
useradd git
useradd redmine
useradd gitlab
passwd git
passwd redmine
passwd gitlab
#配置sudo;添加账号和执行程序路径
#路径添加 /usr/loacal/bin
#sudo允许用户添加redmine、git、redis
visudo
1.5 nginx.org 找到Yum Repository配置,手动添加/etc/yum.repos.d/nginx.repo文件,内容如下:
#nginx Yum Repository http://nginx.org/en/linux_packages.html#stable
[nginx]
name=nginx repo
baseurl=http://nginx.org/packages/centos/6/$basearch/
gpgcheck=0
enabled=1
1.6 安装nginx 1.8.1
yum install nginx -y
1.7 redis.io下载3.0.7源码,并解压缩到/usr/local/src
1.8 编译&安装 redis
cd /usr/local/src/redis-3.0.7
make && make install
1.9 安装redis服务
cp /usr/local/src/redis-3.0.7/redis.conf /home/redis/redis_6379.conf
chown redis:redis /home/redis/redis_6379.conf
自行配制redis_6379.conf
cd /usr/local/src/redis-3.0.7/utils
./install_server.sh
按照提示进行设置,完成后停止redis服务调整系统内核参数
service redis_6379 stop
echo 511 > /proc/sys/net/core/somaxconn
sysctl vm.overcommit_memory=1
echo never > /sys/kernel/mm/transparent_hugepage/enabled
/etc/rc.local 文件追加:
echo 511 > /proc/sys/net/core/somaxconn
echo never > /sys/kernel/mm/transparent_hugepage/enabled
/etc/sysctl.conf 文件追加:
vm.overcommit_memory = 1
2.0 通过yum安装各种ruby、git依赖(openldap*为以后整合账号管理安装)
yum install -y zlib zlib-devel readline readline-devel openssl openssl-devel curl-devel apr-devel apr-util-devel ImageMagick ImageMagick-c++-devel ImageMagick-devel pcre-devel perl-ExtUtils-MakeMaker openldap*
2.1 github上下载git源码,卸载'Development tools'安装的git1.7,编译安装git 2.8.1
yum remove git -y
解压缩git 2.8.1 源码到 /usr/local/src
cd /usr/local/src/git-2.8.1
autoconf && ./configure
make && make install
(编译后的git路径为/usr/local/bin/git)
2.2 下载go、node.js 二进制包(这里我要说明一下,gitlab需要一个js引擎。但是不清楚为啥execjs找不到我手动安装的node.js。这个问题以后再处理【如有知道的请告诉我怎么设置execjs查找&使用node.js。(估计需要安装node.js开发库)】,在这里先装上node.js。)
tar解压缩go、node.js包到/usr/local/lib64
修改/etc/profile(文件末尾)添加
export GOROOT=/usr/local/lib64/go
export GOBIN=$GOROOT/bin
export NODE_HOME=/usr/local/lib64/node.js
export NODE_BIN=$NODE_HOME/bin
export PATH=$PATH:$GOBIN:$NODE_BIN
刷新环境变量:
. /etc/profile
测试安装的go、node.js (执行下面的命令之后要能看见对应程序的版本号):
go version
node --version
2.3 ruby官网下载2.1.9源码,解压缩源码到/etc/local/src
#http://www.ruby-lang.org/zh_cn/downloads/
2.4 编译安装ruby
cd /etc/local/src/ruby-2.1.9
./configure && make && make install && ruby -v
2.5 配置gem源(个人感觉https://ruby.taobao.org/速度更快,但是貌似taobao的ruby源不维护了)
gem sources --remove https://rubygems.org/ -a https://gems.ruby-china.org/ && gem sources -l
2.6 编辑root下gem配置文件:不安装手册文档,加速安装
vi ~/.gemrc
追加:
install: --no-rdoc --no-ri
update: --no-rdoc --no-ri
2.7 升级gem
gem update --system && gem -v
2.8 gem安装rails
gem install rails
rails -v
2.9 gem提前安装部分组件
gem install rbpdf-font
gem install mysql2
gem install bundler
#用unicorn作redmine的web服务器
gem install unicorn
#用therubyracer做js引擎
gem install therubyracer
3.0 准备部署redmine,到mysql服务器上建立redmine空库,建立redmine账号,授权redmine账号对redmine空库权限(这里顺便把gitlab的库也解决了)
CREATE DATABASE redmine;
GRANT ALL PRIVILEGES ON redmine.* TO 'redmine'@'10.10.11.%';
CREATE DATABASE gitlab;
GRANT ALL PRIVILEGES ON gitlab.* TO 'gitlab'@'10.10.11.%';
3.1 登出root,换redmine账号登陆系统,redmine官网下载源码包3.2.1(用wget下载)
#https://www.redmine.org/projects/redmine/wiki/Download
3.2 解压缩redmine包,/home/redmine/src
3.3 cp -R /home/redmine/src/redmine-3.2.1/[a-Z]* ~/
cp /home/redmine/src/redmine-3.2.1/.gitignore ~/
cp /home/redmine/src/redmine-3.2.1/.hgignore ~/
3.4 初始化redmine环境
直接 vi /home/redmine/Gemfile 修改文件设置源路径为ruby-china或ruby.taobao.org
bundler install
3.5 配置redmine
redmine相关配置文件:
#redmine全局配置文件,可复制模板configuration.yml.example,进行配置修改
#configuration.yml配置文件
/home/redmine/config/configuration.yml
#redmine数据库配置文件,可复制模板database.yml.example,进行配置修改
#database.yml配置文件
/home/redmine/config/database.yml
#密钥配置文件redmine/config/secrets.yml
#secrets.yml配置文件
/home/redmine/config/secrets.yml
#生成秘钥时会报错,处理方法:删除redmine/Gemfile.lock,再重新bundler install
export SECRET_KEY_BASE=`rake secret RAILS_ENV=production`
#这里用unicorn做redmine的web服务器(unicorn配置文件gitlab源码目录config下有一个,或直接下载)
#wget -O unicorn.rb https://raw.github.com/defunkt/unicorn/master/examples/unicorn.conf.rb
/home/redmine/config/unicorn.rb
#unicorn.rb配置文件
#生成redmine数据库表、数据
RAILS_ENV=production bundle exec rake db:migrate
RAILS_ENV=production bundle exec rake redmine:load_default_data
#启动redmine,访问10.10.11.128:8080,查看redmine是否正常启动
unicorn_rails -E production -c config/unicorn.rb -D
#开始安装gitlab,这里先感谢 https://gitlab.com/larryli/gitlab 汉化了gitlab
未完待续...