项目

通用

个人资料

操作

Redmine 在 CentOS 上安装指南

此指南适用于 CentOS 版本 5 和 6,描述了如何设置 Redmine 1.3.2。

假设

  • Apache 已启动并运行
  • Apache 之前已经使用并且运行良好
  • MySQL 已启动并运行
  • MySQL 之前已经使用并且运行良好
  • 您已以 root 身份登录
  • 以下步骤将依次进行且无错误
  • 当然,如果您知道自己在做什么,可以使用 vi/vim 作为您选择的编辑器而不是 nano。 ;)

安装依赖

yum -y install zlib-devel curl-devel openssl-devel httpd-devel apr-devel apr-util-devel mysql-devel

安装 Ruby(选项 1)

在 *#* 之后的内容是注释,不需要输入这些内容;)

cd ~/Downloads  # YOUR FOLDER OF CHOICE
ftp ftp.ruby-lang.org

FTP 会话

ftp> Anonymous  # USERLOGIN
ftp> 'none', just hit Enter  # NO PASSWORD
ftp> cd /pub/ruby
ftp> get ruby-1.8.7.pXXX.tar.gz  # XXX is currently 358, as of 03/2012
ftp> bye

解压

tar zxvf ruby-1.8.7.pXXX.tar.gz

安装

cd ruby-1.8.7.pXXX
./configure
make
make install

检查安装

如果这不起作用,可能是因为在 /usr/bin 中找不到 ruby。

ruby -v

如果它工作正常,请直接跳转到 "RubyGems 1.4.2"。

修复依赖

(仅在 ruby -v 未正常工作时)

which ruby  # TO CHECK WHERE IT SHOULD BE
whereis ruby  # TO CHECK WHERE IT IS INSTALLED

which 返回类似 /usr/bin/ 的内容,以及其他目录(其中应该有 ruby),而 whereis 返回类似 /usr/local/bin/ruby(这就是 ruby 实际所在的位置)。

通过添加 /usr/local/bin 到 $PATH 修复

(使用您喜欢的编辑器进行此操作,如果您不喜欢nano。

nano /etc/profile

使用pathmunge使部分看起来像这样

#Path manupulation
if [ "$EUID" = "0" ]; then
    pathmunge /sbin
    pathmunge /usr/sbin
    pathmunge /usr/local/sbin
    pathmunge /usr/local/bin  # ADDED THIS
else
    pathmunge /usr/local/bin after  # ADDED THIS
    pathmunge /usr/local/sbin after
    pathmunge /usr/sbin after
    pathmunge /sbin
fi

或者在文件末尾添加以下内容

nano /etc/profile
export PATH="$PATH:/usr/local/bin"

这将为除了root以外的所有用户设置PATH。对于此设置,您还想要更改root的PATH

nano ~/.bashrc
export PATH="$PATH:/usr/local/bin"

注销您的用户并再次登录,以使更改生效。

通过创建符号链接来修复

这不推荐,因为如果ruby依赖项损坏,其他依赖项可能也会在以后损坏。通过将文件夹添加到$PATH变量中修复此问题,就像之前描述的那样,否则gemrakebundlepassenger-install-apache2-module也无法工作...您稍后还需要为它们创建符号链接。
符号链接创建方式如下

ln -s /usr/local/bin/ruby /usr/bin/ruby

验证ruby是否正常工作

which ruby  # MUST RETURN PATH TO RUBY
ruby -v  # MUST RETURN RUBY VERSION
cd ..

现在它必须工作。在更改$PATH变量时,您是否已使用当前用户注销并重新登录?
如果这不起作用,以后的其他事情也可能不起作用。

安装Ruby(选项2)

使用RMV安装最新版本的Ruby

$ \curl -L https://get.rvm.io | bash -s stable --ruby

或者,如果您需要旧版本,安装Ruby版本(例如1.9.2)

rvm install 1.9.2
Installing Ruby from source to: /Users/user/.rvm/rubies/ruby-1.9.2-p180, this may take a while depending on your cpu(s)...

ruby-1.9.2-p180 - #fetching
ruby-1.9.2-p180 - #downloading ruby-1.9.2-p180, this may take a while depending on your connection...
...
ruby-1.9.2-p180 - #extracting ruby-1.9.2-p180 to /Users/user/.rvm/src/ruby-1.9.2-p180
ruby-1.9.2-p180 - #extracted to /Users/user/.rvm/src/ruby-1.9.2-p180
ruby-1.9.2-p180 - #configuring
ruby-1.9.2-p180 - #compiling
ruby-1.9.2-p180 - #installing

使用新安装的Ruby

$ rvm use 1.9.2
Using /Users/user/.rvm/gems/ruby-1.9.2-p180

检查是否正确工作

user$ ruby -v
ruby 1.9.2p180 (2011-02-18 revision 30909) [i386-darwin9.8.0]

user$ which ruby
Using /Users/user/.rvm/gems/ruby-1.9.2-p180/bin/ruby

RubyGems 1.4.2

不与Gems 1.5兼容!

下载

wget http://production.cf.rubygems.org/rubygems/rubygems-1.4.2.tgz

解压缩

tar zxvf rubygems-1.4.2.tgz

设置

cd rubygems-1.4.2
ruby setup.rb

检查安装

gem -v

工作是否正常?

...否则,原因与之前的ruby问题相同...

Passenger

常规安装方法

需要C++编译器才能完成。
注意:在某些类似CentOS的Linux发行版(RHEL、Amazon Linux)中,C++编译器不是GCC编译器包的一部分。如果是这种情况,可以使用以下命令安装

yum install gcc-c++

gem install passenger
passenger-install-apache2-module

安装过程是交互式的,您将被告知要做什么。如何安装缺少的依赖项将详细描述。只管阅读!

替代安装方法

从以下位置安装Apache的mod_passenger RPM

http://passenger.stealthymonkeys.com/

RHEL/CentOS 5

rpm -Uvh http://passenger.stealthymonkeys.com/rhel/5/passenger-release.noarch.rpm
yum install mod_passenger

RHEL/CentOS 6

rpm --import http://passenger.stealthymonkeys.com/RPM-GPG-KEY-stealthymonkeys.asc
yum install http://passenger.stealthymonkeys.com/rhel/6/passenger-release.noarch.rpm
yum install mod_passenger

重启Apache

service httpd restart

安装Redmine

从SVN检出(推荐)

$ cd /var/www
$ svn co http://svn.redmine.org/redmine/branches/x.x-stable redmine

或下载

下载页面

http://rubyforge.org/frs/?group_id=1850

wget http://rubyforge.org/frs/download.php/75910/redmine-1.3.2.tar.gz # GET LATEST VERSION ON RUBYFORGE

解压缩

tar zxvf redmine-1.3.2.tar.gz

将文件夹复制到其HTTP文档根文件夹

mkdir /var/www/redmine
cp -av redmine-1.3.2/* /var/www/redmine

将Redmine链接到数据库

安装MySQL数据库服务器

yum install mysql-server
chkconfig mysqld on
service mysqld start
/usr/bin/mysql_secure_installation

为Redmine创建一个数据库

启动mysql客户端

mysql -u root -p

您的版本将显示在欢迎信息中。
在mysql控制台中输入以下命令:(不要重复提示))
mysql> create database redmine character set utf8;

最新MySQL版本

mysql> create user 'redmine'@'localhost' identified by 'my_password';
mysql> grant all privileges on redmine.* to 'redmine'@'localhost';
mysql> \q

对于5.0.2之前的MySQL版本

跳过“创建用户”步骤,而是

mysql> grant all privileges on redmine.* to 'redmine'@'localhost' identified by 'my_password';
mysql> \q

现在已创建数据库以及与其一起使用的用户。此外,用户有权在创建的数据库上工作。

配置database.yml

在那里,您必须在配置文件中输入asami morita组合(redmine:my_password),以便Redmine实际上可以与数据库(redmine)通信。

cd /var/www/redmine/config
cp database.yml.example database.yml
nano database.yml

将其更改为类似以下内容

production:
    adapter: mysql
    database: redmine
    host: localhost
    username: redmine
    password: my_password
    encoding: utf8

其他条目不重要,因为我们只会使用生产环境。但是如果你需要开发或测试环境,别忘了创建额外的数据库。不要在生产、测试或开发环境中使用相同的数据库!

Rails 设置

使用 Bundler 进行依赖管理

更多详情请访问 Bundler 网站

安装

gem install bundler

或者如果你遇到问题尝试
gem install bundler --verbose
  • 错误:/usr/local/bin/ruby:符号查找错误:/usr/local/lib/ruby/site_ruby/1.8/x86_64-linux/zlib.so:未定义符号:RB_GC_GUARD
    wget http://www.blue.sky.or.jp/atelier/ruby/ruby-zlib-0.6.0.tar.gz
    tar xvzf ruby-zlib-0.6.0.tar.gz
    cd ruby-zlib-0.6.0
    ruby extconf.rb && make && make install
    

创建 Gemfile

nano /var/www/redmine/Gemfile

注册 gems

将以下内容放入你刚刚打开的文件中

# file: /var/www/redmine/Gemfile
source "https://rubygems.org.cn" 
gem "rake", "0.8.3" 
gem "rack", "1.1.0" 
gem "i18n", "0.4.2" 
gem "rubytree", "0.5.2", :require => "tree" 
gem "RedCloth", "~>4.2.3", :require => "redcloth" # for CodeRay
gem "mysql" 
gem "coderay", "~>0.9.7"

保存并退出编辑器。

安装提供的依赖项

cd /var/www/redmine
bundle install

将环境设置为 "生产"

Rails 有环境的概念,用于表示应用程序生命周期的各个阶段:默认为测试、开发和生产。
使用 RAILS_ENV 环境变量指定你的选择。
生产环境的日志更简洁,运行速度略快,对于你的 Redmine 来说,测试和开发环境根本不需要。

nano /var/www/redmine/config/environment.rb

在文件顶部取消以下行的注释

ENV['RAILS_ENV'] ||= 'production'

生成会话存储

(在终端再次...)

RAILS_ENV=production bundle exec rake generate_session_store

迁移数据库模型

RAILS_ENV=production bundle exec rake db:migrate

加载默认数据(可选)

RAILS_ENV=production bundle exec rake redmine:load_default_data

按照说明操作。

重命名 /redmine/public 中的调度 CGI 文件

cd /var/www/redmine/public
cp dispatch.cgi.example dispatch.cgi
cp dispatch.fcgi.example dispatch.fcgi
cp dispatch.rb.example dispatch.rb

Apache 设置

配置 Apache 以托管文档

更多信息请在此处找到: 如何配置 Apache 以运行 Redmine

编辑 .htaccess 文件以进行 CGI 调度配置

cd /var/www/redmine/public
cp htaccess.fcgi.example .htaccess

修复.apache 用户的权限

cd /var/www
chown -R apache:apache redmine
chmod -R 755 redmine

这就结束了。

Redmine 现已安装并可使用。

享受吧!

DTTH 先生 更新,超过 11 年前 · 53 次修订