美文网首页
项目管理工具Redmine的部署

项目管理工具Redmine的部署

作者: bluexiii | 来源:发表于2017-02-17 17:15 被阅读639次

    什么是Redmine

    Redmine是用Ruby On Rails开发的一款基于WEB的项目管理软件。
    它集成了项目管理所需的各项功能:日历、甘特图、问题跟踪和版本控制,可以同时处理多个项目。

    相比禅道等软件,Redmine的安装还是比较繁琐的,一方面是因为它没有一个自动化的安装脚本,另一方面主要是个人对于Ruby初次接触,需要花一些时间在Ruby的学习上。
    本文仅讨论Redmine的部署方式,关于Redmine使用今后会单独写一篇博文来讲解。

    相关资源

    官网WIKI

    主机环境

    RedHat/CentOS 6.X

    代理服务器配置

    如果主机处于内网环境中,无法直连Internet时,需要首先配置可用的网络环境,最简单的方式是使用代理服务器。
    关于代理服务器的搭建不再赘述了,可以使用srelay+polipo这样的组合,详细步骤请参考之前的一篇文章《内网主机Python3环境搭建》。

    代理服务器配置好之后,我们导入两条环境变量即可。

    export http_proxy="http://xxx.xxx.xxx.xxx:31081"
    export https_proxy="http://xxx.xxx.xxx.xxx:31081"
    
    

    这时wget、curl、yum等已经可以正常使用了。

    安装依赖

    首先使用yum安装一些基本依赖,以下只是一些参考,可以在具体编译时缺什么补什么。

    yum -y install nano zip unzip libyaml-devel zlib-devel curl-devel openssl-devel httpd-devel apr-devel apr-util-devel mysql-devel gcc ruby-devel gcc-c++ make postgresql-devel ImageMagick-devel sqlite-devel perl-LDAP mod_perl perl-Digest-SHA
    

    安装MySQL

    这里为了省事,使用最简单的yum的方式,直接在本机安装一套MySQL。yumd源中的MySQL版本比较老旧,是5.1.73。如果时间充裕的话,建议使用源码或二进制方式进行安装。

    yum -y install mysql mysql-server
    

    将MySQL设置为开机自启,并手工启动服务:

    chkconfig mysqld on
    service mysqld start
    

    初次运行,进行密码等安全性

    /usr/bin/mysql_secure_installation
    

    Disallow root login remotely这一项可以选NO

    Enter current password for root (enter for none):
    Set root password? [Y/n] y
    Remove anonymous users? [Y/n] y
    Disallow root login remotely? [Y/n] n
    Remove test database and access to it? [Y/n] y
    Reload privilege tables now? [Y/n] y
    

    新建MySQL数据库及用户

    直接在本机登录mysql,新建一个数据库及用户

    mysql -uroot -p
    > create database redmine_db character set utf8;
    > create user 'redmine_admin'@'localhost' identified by 'your_new_password';
    > grant all privileges on redmine_db.* to 'redmine_admin'@'localhost';
    

    关闭SELinux

    vi /etc/selinux/config
    SELINUX=disabled
    
    /usr/sbin/setenforce 0 立刻关闭
    

    配置iptables

    配置iptables防火墙,将3000端口打开

    vi /etc/sysconfig/iptables
    
    -A INPUT -m state --state NEW -m tcp -p tcp --dport 3000 -j ACCEPT
    

    重启iptables:

    /etc/init.d/iptables restart
    

    安装Ruby

    使用RVM进行Ruby的安装。RVM是一个命令行工具,可以提供一个便捷的多版本Ruby环境的管理和切换。

    curl -L https://get.rvm.io | bash
    source /etc/profile.d/rvm.sh
    

    列出已知的Ruby版本:

    rvm list known
    

    这里我们选择安装2.3.0:

    rvm install 2.3.0
    

    等待编译安装完成之后,可以查看一下版本号,确认安装成功:

    ruby -v
    ruby 2.3.0p0 (2015-12-25 revision 53290) [x86_64-linux]
    

    安装Rubygems

    RubyGems简称gems,是一个用于对Ruby组件进行打包的Ruby打包系统。

    yum -y install rubygems
    

    下载Redmine

    我们新建一个redmine用户来进行接下来的操作。首先是从官网下载redmine的安装包并解压:

    wget http://www.redmine.org/releases/redmine-3.3.2.tar.gz
    tar -zxvf redmine-3.3.2.tar.gz
    mv redmine-3.3.2 redmine
    

    配置数据库连接

    从示例中复制一份database.yml出来:

    cd /path/to/redmine/config
    cp database.yml.example database.yml
    

    编辑database.yml,填写刚才新建的数据库的各项参数:

    vi database.yml
    
    production:
      adapter: mysql2
      database: redmine_db
      host: localhost
      username: redmine_admin
      password: "redmine_password"
      encoding: utf8
    

    使用Bundle设置Rails

    使用Bundle安装依赖的库

    gem install bundler
    bundle install
    rake generate_secret_token
    

    初始化数据库表及数据

    RAILS_ENV=production rake db:migrate
    RAILS_ENV=production rake redmine:load_default_data
    

    设置文件系统权限

    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
    

    运行

    bundle exec rails server -b 0.0.0.0 webrick -e production -d
    

    相关文章

      网友评论

          本文标题:项目管理工具Redmine的部署

          本文链接:https://www.haomeiwen.com/subject/gjslwttx.html