缺陷管理,对问题的持续跟踪!redmine很棒的基于ruby开发

Redmine部署架构  mysql+nginx+ruby+redmine 3.4.x

部署环境

centos 6.5 x64
redmine-3.4.6.tar.gz
http://www.redmine.org/releases/redmine-3.4.6.tar.gz
http://www.redmine.org/projects/redmine/wiki/RedmineInstall  //安装说明

redmine 版本:3.4.x  //根据官方查看依赖的ruby版本
ruby 版本: 2.4.x  //rvm
rails 版本 : 4.2
mysql      :5.6+
MySQL 5.6 or higher and MariaDB have known issues (#19344, #19395, #17460).
Redmine 4.0.0 does not support MySQL <5.5

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 ruby 1.9.34, 2.0.03, 2.1, 2.22, 2.3, 2.41 Rails 4.2
3.3 ruby 1.9.34, 2.0.03, 2.1, 2.22, 2.3 Rails 4.2
3.2 ruby 1.9.34, 2.0.03, 2.1, 2.22 Rails 4.2

01、rvm安装

#rvm实现对ruby多版本的管理自由切换

useradd ruby && su - ruby  //adduser
gpg --keyserver hkp://keys.gnupg.net --recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3    //导入秘钥
curl -sSL https://get.rvm.io | bash -s stable   //setup-rvm
source ~/.rvm/scripts/rvm && source ~/.bashrc && source ~/.bash_profile

echo "ruby_url=https://cache.ruby-china.org/pub/ruby" > ~/.rvm/user/db  //修改国内源ruby下载

#root执行安装
yum install -y patch autoconf automake bison gcc-c++ libffi-devel libtool patch readline-devel sqlite-devel zlib-devel openssl-devel
rvm requirements  //安装ruby编译库

02、安装ruby

rvm list knownrvm install 2.2.3   //默认二进制安装

rvm install 2.2.3 --disable-binary  //源码编译安装

rvm use 2.2.3 --default

03、安装rails

////修改gem源-国内的
gem sources --add https://gems.ruby-china.org/ --remove https://rubygems.org/

gem sources -l
*** CURRENT SOURCES ***
https://gems.ruby-china.org
# 请确保只有 gems.ruby-china.org
gem install rails
gem install rails -v=4.2 -V  //安装rails 4.2,显示过程-V  安装过程5min+

Bundler 的 Gem国内源
bundle config mirror.https://rubygems.org https://gems.ruby-china.org

04、安装redmine

redmine-3.4.6.tar.gz
http://www.redmine.org/releases/redmine-3.4.6.tar.gz
tar -zxf redmine-*.tar.gz && cd redmine-*
#在redmine家目录执行依赖gem安装
gem install bundler #注意是在网站根目录下执行,自动安装依赖

#安装redmine依赖的所有ruby包
yum install -y ImageMagick ImageMagick-devel  //
#RMagick (allows the use of ImageMagick to manipulate images for PDF and PNG export)
#bundle install --without development test rmagick  //不安装ImageMagick
#bundle install --without development test #完成redmine依赖包的安装
bundle install --without development test postgresql sqlite --no-deployment
#bundle install --without development test postgresql sqlite --deployment

05、安装MySQL

mysql-5.6.28
root/erwsdfd123  //mysql-ruby-running

create database red_test;
grant all on red_test.* to 'red'@'localhost' identified by '123123';

//安装gem mysql2
yum install mysql-devel  //apt-get install libmysqlclient-dev
gem install  mysql2 -v=0.4.6

配置Redmine的database.yml
cp config/database.yml.example config/database.yml
cat database.yum #修改对应数据库连接信息
production: 
  adapter: mysql2
  database: redmine
  host: 127.0.0.1  //localhost是本地sock连接的,ip是通过tcp/ip连接
  username: redmine
  password: "my_password" 
  encoding: utf8

#Rails生成cookies秘钥,必须先配置config/database.yml|config,先配置mysql
#rake generate_secret_token
bundle exec rake generate_secret_token

#创建数据库结构
RAILS_ENV=production bundle exec rake db:migrate
#生成缺省数据语言
RAILS_ENV=production bundle exec rake redmine:load_default_data

06、测试redmine

在WEBrick服务上测试Redmine是否安装成功
bundle exec rails server webrick -e production -b 0.0.0.0

http://IP:3000 (注意:打开iptables 3000端口号)
缺省管理员用户:
admin/admin

07、redmine运行在nginx

安装passenger
gem install passenger
rvmsudo passenger-install-nginx-module

//sudoer
vim /etc/sudoers
Defaults    secure_path = /sbin:/bin:/usr/sbin:/usr/bin:/usr/bin/env   //加上/usr/bin/env
usermod -G wheel ruby
echo erwsdfd123 |passwd ruby --stdin

/home/ruby/nginx
passenger-install-nginx-module可以选择自动下载完整nginx还是自己编译,我在这里是选了下载完整nginx

cp ../redmine-3.1.1 /usr/local/nginx/html/redmine
nginx.conf,修改server部分的location 为

location / {
            root   html/redmine/public;
            index  index.html index.htm;
            passenger_enabled on;
        }
启动nginx
chmod -R 777 public   //开启访问权限
/usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf

//nginx参考
1、gem install passenger
2、 passenger-install-nginx-modul
修改配置文件
user  redmine;
worker_processes  1;

http {
    passenger_root /usr/local/ruby/lib/ruby/gems/2.3.0/gems/passenger-5.0.30;
    passenger_ruby /usr/local/ruby/bin/ruby;
    passenger_app_env production;
    passenger_default_user redmine;
    passenger_user redmine;
  
    server {
        listen       80;
        server_name  localhost;
        passenger_enabled on;

location / {
           root   /app/redmine-3.3.1/public;
           #root html;
           index  index.html index.htm;
        }
  
#1024以下端口需要root 权限才能启动,必须以root 权限启动nginx

//plugin安装
bundle install --without development test postgresql sqlite --deployment
ruby bin/rake redmine:plugins RAILS_ENV=production

//邮件异步
1. 进入redmine目录下的config目录;
2. 编辑configuration.yml;
3. 找到 delivery_method: :smtp,将smtp改为async_smtp,保存退出;
4. 重启nginx服务;

centos6.5搭建redmine3.4的更多相关文章

  1. CentOS6.6搭建LNMP环境

    CentOS6.6搭建LNMP环境 1.设置yum源,本地安装依赖包 1 yum -y install gcc gcc-c++ automake autoconf libtool make 2.下载依 ...

  2. Centos6一键搭建L2TP VPN服务器

    用VPS在墙上打洞还有一种叫L2TP,也是常见的一种方式.本脚本结合了L2TP(Layer Tunneling Protocol)和IPSec(Internet Protocol Security), ...

  3. centos6.5vpn搭建

    centos6.5vpn搭建整个搭建流程,服务端,客户端安装及测试. 达到的效果: 在安装vpn客户端的机器可通过vpn(virtual private network)专用线路(vpn主配置文件中定 ...

  4. CentOS6.5 搭建基础PHP环境(yum安装)

    转载:闲来无事 » CentOS6.5 搭建基础PHP环境(yum安装) yum安装php环境只需要几条简单的命令就可以实现,OK,各位客官,菜来了.首先确保你的yum源可用,或者网络是通的,不然下载 ...

  5. centos6.7搭建DHCP服务器

    centos6.7搭建DHCP服务 2017-03-24 09:47:16 系统环境: centos6.7 安装之前首先使用rpm –qa | grep dhcp查看系统中是否已安装了dhcp软件包. ...

  6. Centos6.8 搭建Nginx服务器

    Nginx (engine x) 是一个高性能的HTTP和反向代理服务器,也是一个IMAP/POP3/SMTP服务器,其特点是占有内存少,并发能力强,业界内的评价一直很不错,反正用过的都说好,虽然我还 ...

  7. Centos6.5搭建vsftpd,并配置用户和密码登录

    Centos6.5搭建vsftpd,并配置用户和密码登录 2017年05月11日 18:40:47 阅读数:6142 1)安装vsftpd yum install vsftpd 2)配置vsftpd配 ...

  8. CentOS6.5 搭建在线yum源

    CentOS6.5 搭建在线yum源 发布时间:  2017-04-21 浏览次数:  611 下载次数:  1  问题描述 尽管有很多的免费镜像提供yum源服务,但是还是有必要建立自己的yum服务器 ...

  9. 开源知识库管理系统选型 centos6.4 搭建knowlededgeroot-1.0.4知识库平台

    开源知识库管理系统选型,除了使用wiki外,还有下面可选: http://www.knowledgebase-script.com/ https://github.com/lordlamer/know ...

随机推荐

  1. 使用idea 在springboot添加本地jar包的方法 部署的时候本地jar没有包含的解决方法

    需要添加dependency 和resources 否则发布的时候可能会缺少jar <dependency> <groupId>com.sap</groupId> ...

  2. C++虚函数之接口 最简单的功能

    虚函数 ,接口,到底有什么用呢? 以前我都是在C++ 里面写C,只用到 简单的C++面对对象知识 #include<stdio.h> class IServerLogic{ virtual ...

  3. boost::asio::ip::tcp实现网络通信的小例子

    同步方式: Boost.Asio是一个跨平台的网络及底层IO的C++编程库,它使用现代C++手法实现了统一的异步调用模型. 头文件 #include <boost/asio.hpp> 名空 ...

  4. C/C++ 分支预测(likely unlikely)

    看一些代码时,会遇到likely unlikely, 查了查网上的资料,结合自己的理解记录一下. 1. 一些概念 指令周期是指执行一条指令所需要的时间,一般由若干个机器周期组成,是从取指令.分析指令到 ...

  5. 在XP系统中,如何让添加新管理员帐户和原来的管理员帐户同时存在

    一.有新账户后administrator账户会自动隐藏的,如果你要用administrator账户登录的话,就机器启动到选账户那里用ctrl+alt+del软启动,然后就可以输入账户名administ ...

  6. cdn网络加速

    CDN全称Content Delivery Network,即内容分发网络.其基本思路是尽可能避开互联网上有可能影响数据传输速度和稳定性的瓶颈和环节,使内容传输的更快.更稳定.通过在网络各处放置节点服 ...

  7. java--线程认识与实例记录 NO.1

    下面的内容都是从java编程思想一书中摘取出来,我认为很有产考价值,并且便于后续使用. 主要内容是记录继承thread和实现runnable接口两种方式的代码用法,及内部类中启用线程的用法. 1.首先 ...

  8. 用Hadoop构建电影推荐系统

    转自:http://blog.fens.me/hadoop-mapreduce-recommend/ Hadoop家族系列文章,主要介绍Hadoop家族产品,常用的项目包括Hadoop, Hive, ...

  9. 如何把本地代码提交到git(码云)、github代码管理项目上

    前提必须安装了git工具 以下命令操作都是通过git bash操作. 将本地代码提交到码云空项目操作: D:\>mkdir inek_winprop D:\>cd inek_winprop ...

  10. Flask的集中控制

    想通过一个统一的机制,同时允许一些公共的逻辑 {% if args["NoUser"] %} 无用户! {% else %} <!DOCTYPE html PUBLIC &q ...