基于ruby环境搭建Redmine
环境说明
系统版本 CentOS 6.9 x86_64
软件版本 ruby 2.4.4
rails 4.2
redmine-3.4.5
Redmine是一个开源的、基于Web的项目管理和缺陷跟踪工具。它用日历和甘特图辅助项目及进度可视化显示。同时它又支持多项目管理。Redmine是一个自由开放源码软件解决方案,它提供集成的项目管理功能,问题跟踪,并为多个版本控制选项的支持。虽说像IBM Rational Team Concert的商业项目调查工具已经很强大了,但想坚持一个自由和开放源码的解决方案,可能会发现Redmine是一个有用的Scrum和敏捷的选择。 由于Redmine的设计受到Rrac的较大影响,所以它们的软件包有很多相似的特征。Redmine建立在Ruby on Rails的框架之上,它可以跨平台和数据库。
安装redmine ruby环境版本要求
注意:此文的网络环境一定要好,不然会出现很多报错提示,这并不是操作问题,而是网络问题!!!
安装redmine ruby环境版本要求
|
Redmine version |
Supported Ruby versions |
Rails version used |
|
4.0 (upcoming) |
ruby 2.2(2.2.2 and later), 2.3, 2.41 |
Rails 5.1 |
|
3.4 |
Rails 4.2 |
|
|
3.3 |
Rails 4.2 |
|
|
3.2 |
Rails 4.2 |
1、安装ruby环境2.4.4
安装rvm(Ruby Version Manager),RVM 是一个命令行工具,可以提供一个便捷的多版本 Ruby 环境的管理和切换。
安装rvm的官方引导 http://rvm.io/rvm/install
gpg --keyserver hkp://keys.gnupg.net --recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3

curl -sSL https://get.rvm.io | bash -s stable

source /etc/profile.d/rvm.sh #按照提示,载入RVM环境并获取需要的支持安装包
rvm requirements #安装依赖包

利用rvm安装 Ruby2.4.4并设为默认
sed -i -E 's#https?://cache.ruby-lang.org/pub/ruby#https://ruby.taobao.org/mirrors/ruby#' /usr/local/rvm/config/db #替换安装源为国内的源
rvm gemset create #建立gemset
rvm install 2.4.4 #安装ruby2.4.4
rvm use 2.4.4 --default #将ruby2.4.4设为默认

2、安装rails框架
gem sources --add https://mirrors.tuna.tsinghua.edu.cn/rubygems/ --remove https://rubygems.org/
#同样的,优化rybygems源
gem sources -l #检查

gem install rails -v 4.2 #安装rails 4.2,需要等待一段时间
3、安装配置mysql
[root@localhost ~]# yum install mysql-server -y #安装mysql
[root@localhost ~]# /etc/init.d/mysqld start #启动mysql
[root@localhost ~]# mysql #登录数据库,进行创库授权

4、安装redmine的nginx支持,这样可以通过nginx访问
passenger将会自动编译安装nginx,首先创建规范目录,并准备好nginx的源码,这里使用最新的nginx-1.14.0

gem install passenger #使用gem安装passenger
passenger-install-nginx-module #使用passenger安装支持nginx的模块
根据提示进行操作,最后出现如下错误提示

yum install curl-devel -y #安装curl-devel
再执行passenger-install-nginx-module

选择2(定制nginx)回车,输入nginx的源码目录以及编译安装的目录

生成nginx的编译参数,参数中添加了模块
--add-module='/usr/local/rvm/gems/ruby-2.4.4/gems/passenger-5.3.1/src/nginx_module'
默认yes,回车进行nginx的编译,需要等待一段时间,消耗的时间与机器的硬件配置有关系

编译安装完成后出现提示,按照提示修改nginx的配置文件

修改nginx的配置文件
[root@localhost ~]# cd /application/nginx/conf/
[root@localhost conf]# grep -Ev '^$|#' nginx.conf.default >nginx.conf
[root@localhost conf]# vim nginx.conf
worker_processes 1;
events {
worker_connections 1024;
}
http {
include mime.types;
default_type application/octet-stream;
sendfile on;
keepalive_timeout 65;
passenger_root /usr/local/rvm/gems/ruby-2.4.4/gems/passenger-5.3.1;
passenger_ruby /usr/local/rvm/gems/ruby-2.4.4/wrappers/ruby;
server {
listen 80;
server_name localhost;
root html/redmine/public;
passenger_enabled on;
}
}
5、安装redmine
下载redmine包或本地上传到nginx站点目录
[root@localhost ~]# cd /application/nginx/html
[root@localhost html]# wget -c http://www.redmine.org/releases/redmine-3.4.5.tar.gz
[root@localhost html]# tar xf redmine-3.4.5.tar.gz
[root@localhost html]# mv redmine-3.4.5 redmine
[root@localhost html]# ls
redmine redmine-3.4.5.tar.gz
[root@localhost html]# cd redmine
[root@localhost redmine]# cp config/database.yml.example config/database.yml
[root@localhost redmine]# vim config/database.yml
production:
adapter: mysql2
database: redmine
host: localhost
username: redmine
password: "123456"
encoding: utf8
6、安装bundle
安装管理ruby的包依赖的工具bundler,redmine使用bundler来管理gems的依赖
[root@localhost redmine]# gem install bundler
Successfully installed bundler-1.16.2
Parsing documentation for bundler-1.16.2
Done installing documentation for bundler after 6 seconds
1 gem installed
[root@localhost redmine]# ls
app config db files log Rakefile test
appveyor.yml config.ru doc Gemfile plugins README.rdoc tmp
bin CONTRIBUTING.md extra lib public script vendor
[root@localhost redmine]# vim Gemfile #修改bundle源的地址
source 'https://mirrors.tuna.tsinghua.edu.cn/rubygems'
[root@localhost redmine]# bundle install --without development test #安装Redmine所需的所有Gem,时间较长
出现错误提示

[root@localhost redmine]# yum install mysql-devel -y #安装mysql-devel
[root@localhost redmine]# bundle install --without development test #再次安装
出现错误提示

[root@localhost redmine]# yum install ImageMagick-devel -y #安装ImageMagick-devel
[root@localhost redmine]# bundle install --without development test #再次安装,终于成功

[root@localhost redmine]# bundle exec rake generate_secret_token #此步骤会生成一个随机密钥,由Rails用来编码存储会话数据的Cookie,从而防止其被篡改。生成新的秘密标记会在重新启动后使所有现有会话失效
[root@localhost redmine]# RAILS_ENV=production bundle exec rake db:migrate #创建数据库结构
[root@localhost redmine]# RAILS_ENV=production bundle exec rake redmine:load_default_data #将缺省配置数据插入数据库中,选择语言zh

7、web检查
[root@localhost redmine]# bundle exec rails server webrick -e production -b 0.0.0.0 #运行WEBrick Web服务器测试安装,启用后使用3000端口


在第4步中配置了nginx支持,所以可以直接使用nginx默认的80端口访问,先停止Ctrl+C,再启动nginx
浏览器直接输入ip地址进行访问
/application/nginx/sbin/nginx

参考来源:
https://www.cnblogs.com/cuchadanfan/p/6027394.html
http://www.redmine.org/projects/redmine/wiki/RedmineInstall 官网安装向导
基于ruby环境搭建Redmine的更多相关文章
- Android开发之基于AndroidStudio环境搭建和工程创建
断断续续的学习安卓也有一段时间了.因为之前是搞iOS开发的, 之前有关iOS的博客请看<我的iOS开发系列博文>.<我的Objective-C系列文章>和<窥探Swift ...
- Ruby环境搭建与“Hello World”
Ruby的环境搭建比较简单,在http://rubyinstaller.org/downloads/可以得到Ruby的安装包, 安装过程没什么问题.安装完成之后需要配置一下环境变量: 在PATH中填入 ...
- mac平台下面ruby环境搭建
一.安装xcode 先安装 [Xcode](http://developer.apple.com/xcode/) 开发工具,它将帮你安装好 Unix 环境需要的开发包 二.安装 RVM curl -L ...
- Ruby环境搭建
刚接触Ruby,发现Ruby真心强大,搞了那么久的Java了,已经被Java的繁琐的语法整的无语透顶了,尤其的Java异常,设计出来就是个失败呀!Ruby目前更新到了2.x了,社区也很活跃,开发效率和 ...
- CentOS7.X基于LAMP环境搭建cacti
1.搭建好LAMP环境 2.登录数据库创建cacti create database cacti default character set utf8; 创建cacti的账户密码 grant all ...
- VSCode + WSL 2 + Ruby环境搭建详解
vscode配置ruby开发环境 vscode近年来发展迅速,几乎在3年之间就抢占了原来vim.sublime text的很多份额,犹记得在2015-2016年的时候,ruby推荐的开发环境基本上都是 ...
- eclipse中Ruby环境搭建
用Eclipse学习Watir.Eclipse支持Ruby的插件:RDT(Ruby Development Tools),下载下来试用了一下,感觉还是不错的.第一步:获取RDT,通过以下链接可以获得R ...
- angular2 基于webpack环境搭建
目录结构: angular-quickstart |_ ts |_ app.ts |_ index.ts |_ index.html |_ package.json |_ tsconfig.json ...
- jitamin基于lnmp环境搭建
从github上面下载源代码 cd /Data/apps/nginx/html git clone https://github.com/jitamin/jitamin.git 修改配置文件 cd ...
随机推荐
- BZOJ1176 [Balkan2007]Mokia 【CDQ分治】
题目 维护一个W*W的矩阵,初始值均为S.每次操作可以增加某格子的权值,或询问某子矩阵的总权值.修改操作数M<=160000,询问数Q<=10000,W<=2000000. 输入格式 ...
- BZOJ1296 [SCOI2009]粉刷匠 【dp】
题目 windy有 N 条木板需要被粉刷. 每条木板被分为 M 个格子. 每个格子要被刷成红色或蓝色. windy每次粉刷,只能选择一条木板上一段连续的格子,然后涂上一种颜色. 每个格子最多只能被粉刷 ...
- tornado获取application/json类型的入参
tornado本身是不支持直接获取json入参的,在BaseHandler中定义方法get_json_argument,以供调用 class BaseHandler(tornado.web.Reque ...
- .com和.cn域名的区别所在,各个域名后缀含义
很多人在注册域名的时候不明白域名后缀的含义,在这里就介绍两种最为常用的域名,介绍下他们的区别以及适用的范围.需要先查询是否被注册,我们经常去的就是西部数据和万网,查询并注册未被注册的域名,一般无论是什 ...
- HDU 5251 矩形面积(二维凸包旋转卡壳最小矩形覆盖问题) --2015年百度之星程序设计大赛 - 初赛(1)
题目链接 题意:给出n个矩形,求能覆盖所有矩形的最小的矩形的面积. 题解:对所有点求凸包,然后旋转卡壳,对没一条边求该边的最左最右和最上的三个点. 利用叉积面积求高,利用点积的性质求最左右点和长度 ...
- odp.net 读写oracle blob字段
DEVELOPER: ODP.NET Serving Winning LOBs: http://www.oracle.com/technetwork/issue-archive/2005/05-nov ...
- [译] 如何像 Python 高手一样编程?
转自:http://www.liuhaihua.cn/archives/23475.html Harries 发布于 7天前 分类:编程技术 阅读(15) 评论(0) 最近在网上看到一篇介绍Pytho ...
- java基础练习 15
import java.util.Scanner; public class Fiftheen { /*有n个人围成一圈,顺序排号.从第一个人开始报数(从1到3报数),凡报到3的人退出圈子,问最后留下 ...
- 【linux高级程序设计】(第十四章)TCP高级应用 2
socket多路复用应用 int select (int nfds, fd_set *readfds, fd_set *writefds, fd_set *exceptfds, struct time ...
- python接口自动化9-https请求(SSL)【转载】
本篇转自博客:上海-悠悠 原文地址:http://www.cnblogs.com/yoyoketang/tag/python%E6%8E%A5%E5%8F%A3%E8%87%AA%E5%8A%A8%E ...