ubuntu 12.04 安装redmine
Posted on 四 16 2月 2017 in linux
最近有个需求,把ALM上的数据导出到redmine中,再做一个插件。
因为系统比较老了,所以中间遇到一些问题。
#redmine的环境如下
Environment:
Redmine version 3.2.1.stable
Ruby version 2.3.1-p112 (2016-04-26) [x86_64-linux]
Rails version 4.2.5.2
Environment production
Database adapter Mysql2
SCM:
Filesystem
Redmine plugins:
no plugin installed
-
安装ruby, gems, rails
因为ubuntu默认版本是1.8,所以需要升级安装2.3.1。我用的是rbenv# 如果是zsh的话, .bashrc要换成.zshrc $ git clone https://github.com/rbenv/rbenv.git ~/.rbenv $ echo 'export PATH="$HOME/.rbenv/bin:$PATH"' >> ~/.bashrc $ echo 'eval "$(rbenv init -)"' >> ~/.bashrc $ exec $SHELL $ git clone https://github.com/rbenv/ruby-build.git ~/.rbenv/plugins/ruby-build $ echo 'export PATH="$HOME/.rbenv/plugins/ruby-build/bin:$PATH"' >> ~/.bashrc $ exec $SHELL # 安装ruby $ rbenv install 2.3.1 source ~/.bashrc # 最后执行一下这一步 # 设置为全局 rbenv global 2.3.3 # 检查一下ruby的版本 ruby -v
安装gems,(rubygems的简称, 类似于python的pip,是一个包管理器)
sudo apt-get install rubygems # for ubuntu 12
查看gems的安装路径
gem env gemdir
用gem安装rails
gem insall rails
-
下载redmine代码
-
数据库我选择mysql
Redmine database user will be named redmine hereafter but it can be changed to anything else
登录到mysql命令行,redmine_default, 新建一个redmine用户,密码为my_password。给redmine用户操作redmine数据库的权限CREATE DATABASE redmine_default CHARACTER SET utf8; CREATE USER 'redmine'@'localhost' IDENTIFIED BY 'my_password'; GRANT ALL PRIVILEGES ON redmine_default.* TO 'redmine'@'localhost';
-
配置数据库连接
在第一步下载完成代码后,放到你的工作目录。
复制config/database.yml.example为config/database.yml,修改production
部分相关的内容,其它development
,test
部分我暂不使用production: adapter: mysql2 database: redmine_default host: localhost username: redmine password: my_password encoding: utf8
-
安装依赖
一定要在redmine代码的根目录!!!
首先用gem 安装 bundlergem install bundler
安装项目的依赖
# 这里排除了 development test, 如果修改了database.yml以后,还要重新执行一次 bundle install --without development test
-
session安全相关
这一步主要是产生加密cookie和session的keybundle exec rake generate_secret_token
-
数据库结构创建
RAILS_ENV=production bundle exec rake db:migrate
-
插入默认数据
RAILS_ENV=production bundle exec rake redmine:load_default_data
-
创建相关文件夹
- files (storage of attachments)
- log (application log file production.log)
- tmp and tmp/pdf (create these ones if not present, used to generate PDF documents among other things)
-
public/plugin_assets (assets of plugins)
mkdir -p tmp tmp/pdf public/plugin_assets sudo chown -R redmine:redmine files log tmp public/plugin_assets sudo chmod -R 755 files log tmp public/plugin_assets
-
测试运行rails
bundle exec ruby script/rails server webrick -e production
打开浏览器,输入http://localhost:3000/,应该就可以看到redmine的登录界面了,同时console里面也可以看到log
默认用户名和密码都是admin
部署,启动redmine
-
安装passenger及apache扩展
gem install passenger --no-rdoc --no-ri passenger-install-apache2-module
然后根据提示进行操作,可能需要修改
/etc/apache2/mods-enabled/passenger.load
和/etc/apache2/mods-available/passenger.conf
启用passenger扩展
sudo a2enmod passenger
修改
/etc/apache2/sites-available/default
, 添加如下部分<Directory /var/www/redmine> RailsBaseURI /redmine PassengerResolveSymlinksInDocumentRoot on </Directory>
启动redmine
sudo ln -s /redmine_dir/public/ /var/www/redmine
重启apache
sudo service apache2 restart
-
安装rmagic
这一步不是必须的。 先要安装ImageMagick
,因为ubuntu版本的原因,所以不能用apt-get安装。从源码,而且不能选择最新的7.0的版本,因为rmagic还没有适配,最新的pr前两天还有人回复。git clone https://github.com/ImageMagick/ImageMagick.git cd ImageMagick git checkout -b im6 origin/ImageMagick-6 git clean -fd ./configure make sudo make install sudo ldconfig /usr/local/lib gem install rmagick
这里有一个坑,官方安装时说如果没有装rmagick的话用下面的命令
bundle install --without development test rmagick
但是如果在之后安装了rmagick,想要enable时,官方却没有指出。后来才发现要修改
.bundle/config文件
里面的内容如下:BUNDLE_WITHOUT: "development:test:rmagick"
注意这个
.bundle
文件是在代码的根目录,不是用户主目录。把:rmagick
删除。再执行bundle install --without development test # 重启apache sudo service apache restart # 重启passenger的方法如下 passenger-config restart-app
API接口
redmine有提供接口,刚好又有一个封闭好的python的包也比较好用PythonRedmine
详细使用可以看这里http://python-redmine.readthedocs.io/
参考链接:
http://stackoverflow.com/questions/18490591/how-to-install-ruby-2-on-ubuntu-without-rvm
https://henter.me/post/ruby-rvm-gem-rake-bundle-rails.html
https://ruby-china.org/topics/25530
https://wiki.archlinux.org/index.php/Ruby_(简体中文)
http://www.redmine.org/projects/redmine/wiki/RedmineInstall
http://www.redmine.org/projects/redmine/wiki/HowTo_Install_Redmine_30x_on_Ubuntu_1404_with_Apache2_Phusion_Passenger_MySQL_Subversion_and_Git_(Gitolite)#Users
http://www.redmine.org/projects/redmine/wiki/HowTo_Install_Redmine_on_Ubuntu_step_by_step
https://www.phusionpassenger.com/library/install/apache/install/oss/rubygems_rvm/
http://www.imagemagick.org/script/install-source.php
http://sayaku.github.io/blog/2016/05/05/rubyde-rvm-gem-bundler/
https://ruby-china.org/topics/25530