开发项目管理工具redmine

Redmine

Redmine是用Ruby开发的基于web的项目管理软件,是用ROR框架开发的一套跨平台项目管理系统,据说是源于Basecamp的ror版而来,支持多种数据库,有不少自己独特的功能,例如提供wiki、新闻台等,还可以集成其他版本管理系统和BUG跟踪系统,例如Perforce、SVN、CVS、TD等等。这种 Web 形式的项目管理系统通过“项目(Project)”的形式把成员、任务(问题)、文档、讨论以及各种形式的资源组织在一起,大家参与更新任务、文档等内容来推动项目的进度,同时系统利用时间线索和各种动态的报表形式来自动给成员汇报项目进度

功能

  •  多项目和子项目支持
  • 里程碑版本跟踪
  • 可配置的用户角色控制
  • 可配置的问题追踪系统
  • 自动日历和甘特图绘制
  • 支持 Blog 形式的新闻发布、Wiki 形式的文档撰写和文件管理
  • RSS 输出和邮件通知
  •  每个项目可以配置独立的 Wiki 和论坛模块
  • 简单的任务时间跟踪机制
  • 用户、项目、问题支持自定义属性
  • 支持多 LDAP 用户认证
  •  支持用户自注册和用户激活
  • 多语言支持(已经内置了zh简体中文)
  • 多数据库支持(MySQL、SQLite、PostgreSQL)
  • 外观模版化定制(可以使用 Basecamp 、Ruby安装)
  • 项目论坛

  • 简单实时跟踪功能

  • SCM in集成 (SVN, CVS, Git, Mecuial, Bazaa and Dacs)


Redmine安装配置

dcb20e8b2902725de84ce8638d44653fb7b.jpg


安装依赖:ruby、rake、rails

说明:centos7.3 可以使用yum直接安装ruby,也可以使用rvm安装。在此使用rvm管理ruby,rvm 是一个命令行工具.

#安装rvm
$ gpg --keyserver hkp://keys.gnupg.net --recv-keys D39DC0E3

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

$ source /etc/profile.d/rvm.sh  #这一步必不可少,在执行完上一步之后也会提醒需要执行

$ rvm reload

$ rvm install 2.3.3


# 使用rvm命令:安装ruby
$ rvm list 查看ruby

$ rvm use 2.3.3  使用ruby

$ rvm install xxxx 安装一个版本的ruby

$ rvm remove  xxxx   卸载一个版本的ruby


# 安装rake和rails
## 如果嫌默认的ruby源慢,可以使用以下方法进行替换
$ gem source -r https://rubygems.org/  # 删除默认ruby源

$ gem source -a http://mirrors.aliyun.com/rubygems/  # 配置阿里的源

## 安装
$ gem install rake -v 12.0.0

$ gem install rails -v 4.2.6


安装Redmine

$ wget http://www.redmine.org/releases/redmine-3.4.6.tar.gz

$ tar -xvf  redmine-3.4.6.tar.gz

$ mv redmine-3.4.6 /usr/local/

$ cd /usr/local/

$ ln -s redmine-3.4.6 ./redmine


创建数据库

mysql -uroot -proot
 
mysql> CREATE DATABASE redmine CHARACTER SET utf8;

mysql> CREATE USER 'redmine'@'172.16.0.4' IDENTIFIED BY 'redmine';

mysql> GRANT ALL PRIVILEGES ON redmine.* TO 'redmine'@'172.16.0.4';


#测试连接redmine 库
$ mysql -uredmine -h172.16.0.4 -predmine

mysql> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| redmine            |
+--------------------+
2 rows in set (0.00 sec)


配置数据库

#进入redmine 配置目录
$ cd /usr/local/redmine/config

$ cp database.yml.example database.yml

$ vim database.yml

  adapter: mysql2
  database: redmine   #数据库
  host: 172.16.0.4    #数据库连接IP
  username: redmine   #数据库用户
  password: "redmine" #数据库密码
  encoding: utf8


安装依赖: Redmine通过Bundler管理gems的依赖

# 安装bundler
$ gem install bundler

# 安装Redmine所依赖的gems相关包
$ bundle install --without development test

 

  • Note: 可选依赖项 && 数据库适配器
  • RMagick :允许通过ImageMagick操作PDF和PNG导出的图像。如果系统没有安装ImageMagick,在安装Redmine依赖包时需要跳过该项 bundle install --without development test rmagick
session加密处理: 创建随机key对session加密,防止被篡改 
$ bundle exec rake generate_secret_token

初始化数据库字段:
$ RAILS_ENV=production bundle exec rake db:migrate

数据初始化:
$ RAILS_ENV=production bundle exec rake redmine:load_default_data

## 该过程会以交互形式让用户选择语言环境变量,也可以在执行该命令时直接指定环境变量,如下:
$ RAILS_ENV=production REDMINE_LANG=zh bundle exec rake redmine:load_default_data

 

  • 文件系统授权: 运行Redmine的用户需要对以下目录文件有写权限。出于安全考虑,app使用普通用户运行,所以在此需要先创建redmine用户。授权目录如下:
  • files:存储附件文件log:存放应用日志
  • tmp 和 tmp/pdf:如果目录文件不存在需要手动创建,用于创建PDF文件
  • public/plugin_assets:存放插件
$ mkdir -p /usr/local/redmine/tmp/pdf /usr/local/redmine/public/plugin_assets

$ useradd redmine

$ chown -R redmine:redmine /usr/local/redmine

测试
$ bundle exec rails server webrick -e production


启动Redmine:

$ /usr/local/rvm/rubies/ruby-2.3.3/bin/ruby /usr/local/redmine/bin/rails server webrick -e production -d

检查Redmine运行状态:

Note: Due to a change in Rack,

rails server now listens on localhost instead of 0.0.0.0 by default. This

should have minimal impact on the standard development workflow as both

http://127.0.0.1:3000 and http://localhost:3000 will continue to work as before

on your own machine.

However, with this change you will no longer be able to access the Rails

server from a different machine, for example if your development environment

is in a virtual machine and you would like to access it from the host machine.

In such cases, please start the server with rails server -b 0.0.0.0 to

restore the old behavior.

即, 新版本的Redmine启动后默认监听localhost,如果要通过外网访问,需要在启动时指定其监听的ip。如果不指定,需要在本机配置代理(nginx/httpd)。


安装iptables

$ yum install -y iptables-services

#添加规则
$ vim /etc/sysconfig/iptables

-A INPUT -p tcp -m state --state NEW -m tcp --dport 22 -j ACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp --dport 80 -j ACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp --dport 3306 -j ACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp --dport 3000 -j ACCEPT


#启动iptables
systemctl start iptables


 

# 检测方法1:
$ curl http://192.168.228.130:3000 -I   # 返回200状态码

# 检测方法2:配置代理,通过浏览器访问
## nginx相关配置如下:

vim /usr/local/nginx/conf/vhost/upstream.conf
upstream backserver {
    server 127.0.0.1:


vim /usr/local/nginx/conf/vhost/redmine.conf 
server {
    listen 80;
    server_name redmine.sasha-lab.net

    location / {
        #配置代理
        proxy_pass      http://backserver;
        proxy_set_header Host   $host;
        proxy_set_header X-Real-IP      $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    }
}

Redmine安装完成
  • 2fd9d4156193bd471965368cd8f01ce2f4f.jpg

登录 

说明:user:admin  passed:admin

4a30a3a0556bc1877b1b926f32e826a2a79.jpg

 

登陆后会提示更改密码

958a4358fac3b5c19dcab1dc6b06bc19afe.jpg

至于我改了什么密码就不告诉你们啦

fd989824a525ce88adc3fcf73cd4f5e7016.jpg

Redmine安装插件

随着需求的不断调整,对于功能的要求也就越来越多,所以作为运维,随时都面临着对已有工具升级、打补丁、装插件等工作。

Redmineg官方插件 http://www.redmine.org/plugins?page=1 ,更多的插件可以到github查找并下载。

安装插件(插件redmine_angile):
下载插件到 cd /usr/local/redmine/plugins/ 下,并解压

安装依赖的gems包(需要先切换至Redmine运行目录):

$ cd /usr/local/redmine/ && bundle install --without development test --no-deployment --path vendor/cache 

切换至redmine用户 (必须有该操作,否则将因文件权限问题导致服务不可用);

更新数据库 

$ bundle exec rake redmine:plugins NAME=redmine_agile RAILS_ENV=production ;


重启redmine

/usr/local/rvm/rubies/ruby-2.3.3/bin/ruby /usr/local/redmine/bin/rails server webrick -e production -d


刷新页面即可看安装的插件
b78f744bc147af77f0e8103e6c94c4aad07.jpg

Redmine 配置邮件通知

#复制配置文件模版
$ cp configuration.yml.example configuration.yml

#配置

default:
  email_delivery:
  delivery_method: :async_smtp   
  smtp_settings:  
    address: smtp.163.com 
    port: 25  
    domain: 163.com  
    authentication: :login  
    user_name: "13660559892@163.com"
    #password: "!QAZxsw2#EDC"  
    password: "Wuqd13579246810" 

温馨提示:若delivery_method: :smtp 在测试发送邮件时会报553状态码,如图显示

29bf8125dbd9ecc08d297f42083a1f63a75.jpg

转载于:https://my.oschina.net/AnnaWu/blog/2356582

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值