操作
如何在Debian Squeeze上使用Apache Passenger安装Redmine 2.1¶
本文由Jérôme Warnier共同撰写,大部分工作由他完成,我偶尔提供支持。向他致敬。
我们找不到任何有价值的Redmine 2.1在Debian Squeeze上安装的手册,并且在安装过程中遇到了很多阻力,所以我们提出了以下逐步指南...
假设¶
我们假设以下内容:
- 我们使用Debian Squeeze安装
- 我们拥有该机器的root访问权限
- 机器本身有公开访问权限(公开IP)
- 我们能够为这个Redmine安装定义一个公开域名(或子域名)
- 我们有权限定义一个数据库(我们选择了MySQL)用户,用于Redmine(这非常重要,以避免与另一个Web系统共享账户时的安全风险)。我们还假设我们已经安装了一个MySQL服务器。
- 我们将使用Apache 2的modPassenger(并且Apache 2已经安装在该服务器上)
- 我们将使用redmine.example.com;所以当您在下面看到这个时,请将其替换为您自己的域名
准备¶
我们首先需要安装基本软件包
apt-get install ruby ruby-dev rubygems libruby libapache2-mod-passenger
下载Redmine的最新版本(在我们的例子中是2.1.0),解压它,然后将其移动到/usr/local/share
wget http://rubyforge.org/frs/download.php/76448/redmine-2.1.0.tar.gz tar -xvf redmine-2.1.0.tar.gz mv redmine-2.1.0 /usr/local/share/redmine-2.1.0 ln -s /usr/local/share/redmine-2.1.0 /usr/local/share/redmine chown -R root:root /usr/local/share/redmine-2.1.0
安装MySQL的开发库
apt-get install libmysqlclient-dev
安装Imagick的开发库
apt-get install libmagickcore-dev libmagickwand-dev (install shitload of packages)
运行Gem相关操作¶
安装Bundler(移除无用的模块,否则会创建依赖项)
gem install bundler cd /usr/local/share/redmine/ bundle install --without development test postgresql sqlite #maybe you have to use /var/lib/gems/1.8/bin/bundle install --without development test postgresql sqlite
配置¶
打开mysql会话
CREATE DATABASE redmine CHARACTER SET utf8; CREATE USER 'redmine'@'localhost' IDENTIFIED BY 'my_password'; GRANT ALL PRIVILEGES ON redmine.* TO 'redmine'@'localhost';
将config/database.yml.example复制到config/database.yml,并编辑此文件以配置"生产"环境的数据库设置。
mv config/database.yml.example config/database.yml
使用ruby1.8或jruby的MySQL数据库示例
production: adapter: mysql database: redmine host: localhost username: redmine password: my_password
生成会话存储密钥
rake generate_secret_token
生成数据库结构
RAILS_ENV=production rake db:migrate
生成默认配置数据
RAILS_ENV=production rake redmine:load_default_data
(在终端提示符中使用“es”代表西班牙语语言)
在config/configuration.yml中设置配置文件
更改database_ciphr_key: *
rake db:encrypt RAILS_ENV=production
Apache¶
设置Apache的VirtualHost配置
vim /etc/apache/site-available/redmine.example.com
并插入以下文本
# 8080 in this case is because we use a reverse proxy before Apache. Otherwise simply use "*:80" <VirtualHost *:8080> ServerName redmine.example.com DocumentRoot /usr/local/share/redmine/public <Directory /usr/local/share/redmine/public> AllowOverride all Options -MultiViews </Directory> </VirtualHost>
一旦您启用此虚拟主机(a2ensite redmine.example.com)并重新加载Apache(/etc/init.d/apache2/reload),您应该可以在http://redmine.example.com上看到您的站点正在运行。
如果您无法创建或编辑用户,请删除/opt/redmine中的缓存文件夹
默认登录密码是admin/admin(别忘了更改它)。
灵感来源¶
我们使用了以下资源作为起点。感谢各自的作者。
- http://madpropellerhead.com/random/20100820-installing-redmine-on-debian-with-apache(已过时,适用于Lenny版本)
- https://redmine.ruby-lang.org.cn/projects/redmine/wiki/RedmineInstall
- http://hodza.net/2012/03/15/howto-install-redmine-on-debian-6-squeeze-ruby-on-rails-apache2-passenger/
- https://redmine.ruby-lang.org.cn/projects/redmine/wiki/HowTo_Install_Redmine_on_Debian_with_Ruby_on_Rails_and_Apache2-Passenger
最后更新由Егений Греков 10多年前 · 7次修订