Centos5.8 安装 Redmine
安装Ruby 到 /opt/ruby-2.0.0
tar -zxvf ruby-2.0.-p481.tar.gz
cd ruby-2.0.-p481
./configure --prefix=/opt/ruby-2.0.
sudo make
sudo make install
whereis ruby
/opt/ruby-2.0./bin/ruby -version
cd /usr/local/bin/
sudo ln -s /opt/ruby-2.0./bin/ruby ruby
sudo ln -s /opt/ruby-2.0./bin/gem gem
注意: (Centos6.5)需要预先安装
sudo yum install openssl-devel
sudo yum install mysql-devel
sudo yum install zlib-devel
在后面的步骤中出现对应的无法找到xxx时, 到ruby-2.0.0-pxxx/ext/ 的对应的扩展目录下
sudo ruby extconf.rb
sudo make
sudo make install
安装RubyGems
tar -zxvf rubygems-2.3..tgz
sudo ruby setup.rb
准备MySQL数据库
sudo mysql -u root -p
略
安装Redmine
unzip redmine-2.5..zip
cd redmine-2.5.
cd /var/www/
sudo mv ~/backup/redmine-2.5. ./redmine
cd redmine/config
cp database.yml.example database.yml
vi database.yml 修改数据库连接参数
用gem 安装依赖插件
cd backup/
sudo gem install --http-proxy http://127.0.0.1:3128 bundler
vi /var/www/redmine/Gemfile 查看, 不改动
到redmine根目录下
/opt/ruby-2.0./bin/bundle install --without development test rmagick
这一步如果网络不好, 要很长时间
然后是初始化数据库, 依次执行
RAILS_ENV=production /opt/ruby-2.0./bin/bundle exec /opt/ruby-2.0./bin/rake generate_secret_token
RAILS_ENV=production /opt/ruby-2.0./bin/bundle exec /opt/ruby-2.0./bin/rake db:migrate
RAILS_ENV=production /opt/ruby-2.0./bin/bundle exec /opt/ruby-2.0./bin/rake redmine:load_default_data
启动服务, 可以在最后加上 -d 参数后台运行
ruby script/rails server webrick -e production
ruby script/rails server webrick -e production -d
如果访问很慢, 可以做以下修改, 打开 /opt/ruby-2.0.0/lib/ruby/2.0.0/webrick/config.rb
找到
General = {
:ServerName => Utils::getservername,
:BindAddress => nil, # "0.0.0.0" or "::" or nil
:Port => nil, # users MUST specify this!!
:MaxClients => , # maximum number of the concurrent connections
:ServerType => nil, # default: WEBrick::SimpleServer
:Logger => nil, # default: WEBrick::Log.new
:ServerSoftware => "WEBrick/#{WEBrick::VERSION} " +
"(Ruby/#{RUBY_VERSION}/#{RUBY_RELEASE_DATE})",
:TempDir => ENV['TMPDIR']||ENV['TMP']||ENV['TEMP']||'/tmp',
:DoNotListen => false,
:StartCallback => nil,
:StopCallback => nil,
:AcceptCallback => nil,
:DoNotReverseLookup => true,
:ShutdownSocketWithoutClose => false,
}
把 "DoNotReverseLookup" 的值从 nil 改为 true.
使用httpd 反向代理访问
sudo vi /etc/httpd/conf.d/redmine.conf NameVirtualHost *:
<virtualhost *:="">
DocumentRoot "/var/www/redmine/public"
ServerName www.dummy.com
ErrorLog logs/www.dummy.com-error_log
CustomLog logs/www.dummy.com-access_log common ProxyPass / http://localhost:3000/
ProxyPassReverse / http://localhost:3000/ </virtualhost> <virtualhost *:="">
DocumentRoot "/var/www/html"
ServerName 192.168.10.106
</virtualhost>
第一个VirtualHost用于将www.dummy.com的访问跳转到3000端口
第二个VirtualHost用于保留原来的document root (否则全都到第一个VirtualHost去了)
错误解决
如果httpd 的 error_log里出现这种错误的: [Sun Jun 22 02:53:09 2014] [error] (13)Permission denied: proxy: HTTP: attempt to connect to 127.0.0.1:3000 (localhost) failed 需要打开selinux对httpd访问本机端口的限制:
setsebool httpd_can_network_connect=
如果需要永久生效, 加上 -P 参数
setsebool -P httpd_can_network_connect
如果启动httpd时出现这样错误, 而目录又确实存在的: Starting httpd: Warning: DocumentRoot [/var/www/redmine/public] does not exist 需要用ls -Z 检查一下这个路径上每个目录, 属性是否正确, 否则就依次用这个命令重设属性:
sudo /sbin/restorecon redmine/
sudo /sbin/restorecon public/
添加到开机自启动
首先添加用户redmine (或者用别的用户也可以)
sudo useradd redmine
sudo passwd redmine
将redmine整个目录的owner改为redmine
sudo chown -R redmine:redmine /var/www/redmine
然后在/etc/init.d下创建启动脚本 redmine:
#!/bin/sh
#
# Startup script for redmine
#
# chkconfig:
# description: redmine project manager
# processname: redmine
# pidfile: /var/run/redmine.pid # Source function library.
. /etc/rc.d/init.d/functions program="redmine"
port=""
server="webrick" #webrick|thin
other_opts="-d" program_home="/var/www/${program}/"
[ -d ${program_home} ] || exit
PIDFILE="/var/run/${program}.pid"
LOCKFILE="/var/lock/subsys/${program}" # See how we were called.
case "$1" in
start)
echo -n "Starting ${program} ..."
#### Commands to start the process running
# -d: detach
# -e: environment
# -p: port
/bin/su - redmine -c "/usr/local/bin/ruby ${program_home}script/rails server ${server} -e production -p ${port} ${other_opts}"
sleep
echo `pgrep -f "ruby script/rails server ${server} -e production -p ${port} ${other_opts}"` > ${PIDFILE}
touch ${LOCKFILE}
echo
;;
stop)
echo -n "Shutting down ${program} ..."
killproc ${program}
echo
rm -f ${LOCKFILE}
rm -f ${PIDFILE}
;;
status)
status ${program}
;;
restart)
$ stop
$ start
;;
*)
echo "Usage: $0 {start|stop|restart|status}"
exit
esac
exit $?
将redmine添加到自启动
sudo /sbin/chkconfig --add redmine
看看是否添加成功
sudo /sbin/chkconfig --list
Centos5.8 安装 Redmine的更多相关文章
- CentOS5.4安装redmine详细步骤
>>>>概述<<<< 这里不解释什么是redmine及用来做什么,如果不知道用来做什么,估计也不会把它安装到CentOS5.4上.哈哈…… 以下为详细的 ...
- CentOS安装redmine 2后的简单配置
CentOS5.4安装redmine详细步骤 http://blog.csdn.net/leekwen/article/details/8516832 <<<<输出日志的配置& ...
- [Redmine] Centos5上安装Redmine3.0+nginx+thin部署
项目管理的需要所以安装Redmine,其实wiki放在上面也不错的. 首先是安装,ruby应用第一次装,把坑记住. nginx, mysql是已经安装好的,只需要配置, 结合nginx的部署方式很多, ...
- centos-5.5安装vmvare tools
centos-5.5安装vmvare tools 虚拟机管理,安装tools 找到VMwareTools压缩包 解压到Desktop,桌面 终端进入桌面 执行程序# ./vmware-install. ...
- CentOS 6.6 安装redmine
Redmine是一个开源的.基于Web的项目管理和缺陷跟踪工具.它用日历和甘特图辅助项目及进度可视化显示.同时它又支持多项目管理.Redmine是一个自由开放源码软件解决方案,它提供集成的项目管理功能 ...
- BitNami一键安装Redmine(转)
1. 简介 对于一个新手,如果严格按照官方文档来安装redmine,我想会“疯”掉的.有没有一种简便的方法.有滴,那就是BitNami. BitNami提供redmine的一键安装程序,简单.易用.方 ...
- CentOS下安装Redmine 2.5.2
Redmine是用Ruby开发的基于web的项目管理软件,所以先要下载安装Ruby,再下载对 Ruby组件进行打包的 Ruby 打包系统RubyGems. 第一步:下载必要的软件 1.依赖包安装 # ...
- Linux上安装Redmine
安装基本的软件环境 # yum install zip unzip libyaml-devel zlib-devel curl-devel openssl-devel httpd-devel apr- ...
- BitNami一键安装Redmine
1. 简单介绍 对于一个新手,假设严格依照官方文档来安装redmine,我想会"疯"掉的.有没有一种简便的方法.有滴,那就是BitNami. BitNami提供redmine的一键 ...
随机推荐
- 浅谈TabLayout(ViewPager+Tab联动)
google发布了的Android Support Design库中提供了TabLayout 通过TabLayout+ViewPager实现导航栏效果,点击Tab ,ViewPager跟随变化,滑动V ...
- Android Frameworks层介绍
Activity Manager用来管理应用程序生命周期并提供常用的导航回退功能. Window Manager提供一些我们访问手机屏幕的方法.屏幕的透明度.亮度.背景. Content Provid ...
- Android音乐播放器源码(歌词.均衡器.收藏.qq5.0菜单.通知)
一款Android音乐播放器源码,基本功能都实现了 qq5.0菜单(歌词.均衡器.收藏.qq5.0菜单.通知) 只有向右滑动出现,菜单键和指定按钮都还没有添加. 源码下载:http://code.66 ...
- GitHub Android Libraries Top 100 简介
本项目主要对目前 GitHub 上排名前 100 的 Android 开源库进行简单的介绍, 至于排名完全是根据 GitHub 搜索 Java 语言选择 (Best Match) 得到的结果, 然后过 ...
- python 判断学期与学年
9,10,11,12,1 第一学期 2,3,4,5,6,7 第二学期 其中8月份放假,暂且放入第一学期.因为大部分学校都选在8月底开学 import datetime def getXNandXQ() ...
- Maven基础配置—上传jar包到私服
一.配置 在需要上传的工程中的pom.xml文件中加入下面的配置 <distributionManagement> <repository> <id>release ...
- mysql 去重,跨表更新,跨表删除
一.去重 1.查询出重复的记录 CREATE TABLE push_log_full_2013_10_30_tmp SELECT * FROM `push_log_full` WHERE time B ...
- Nginx 切片模块、断点续传
熟悉 CDN 行业主流技术的朋友应该都比较清楚,虽然 Nginx 近几年发展的如日中天,但是基本上没有直接使用它自带的 proxy_cache 模块来做缓存的,原因有很多,例如下面几个: 不支持多盘 ...
- SQL Server 2008 R2——VC++ ADO 操作 重复利用_ParameterPtr
==================================声明================================== 本文原创,转载在正文中显要的注明作者和出处,并保证文章的完 ...
- Linux JDK 安装
1,下载JDK(Linux版) 官网下载:http://www.oracle.com/technetwork/java/javase/downloads/index.html 2, 建立java目录 ...