文章

Redmine环境搭建

好久没有发文章了最近比较忙,今天说一下redmine管理系统的搭建,这个东西还是非常有用的,从今年年初开始我们公司便一直在使用这套项目管理系统,第一是因为它免费,第二是效果确实可以,自从有了这个东西很多东西统一了同时规范了,结合公司的rap和git加域控基本上算是一个正规的配置了。想起写这个是因为今天我们为了解决跨地域联合办公的问题将已经有的redmine在线上部署了一个新的,同时把以前的资料全部迁移过去了,所以拿出来写一下流程。

一切的开始就是版本,这个东西需要的依赖软件版本千万不要搞错了,反正我这个版本配置是没有什么问题,其他就不好说了,建议全部按照我的版本来配置。

1
2
3
4
#系统:Centos 7.4 mini
#Ruby:2.4.1
#Rails:4.2
#Redmine:3.4

首先是系统包与部分环境包,mini系统不具备大部分软件使用的系统与环境包虽然比较轻量级但是组件还是有很多缺失的,但是它比起完整版本系统有一个好处就是完整版的各个包有可能与我们所需要的包冲突。
刚刚安装完系统之后便进行yum升级

1
yum -y update

然后安装系统与环境包

1
2
3
4
5
6
7
8
9
10
11
12
yum -y install patch make gcc gcc-c++ gcc-g77 flex* bison file
yum -y install libtool libtool-libs libtool-ltdl-devel* autoconf kernel-devel automake libmcrypt*
yum -y install libjpeg libjpeg-devel libpng libpng-devel libpng10 libpng10-devel gd gd-devel
yum -y install freetype freetype-devel libxml2 libxml2-devel zlib zlib-devel
yum -y install glib2 glib2-devel bzip2 bzip2-devel libevent libevent-devel
yum -y install ncurses ncurses-devel curl curl-devel e2fsprogs
yum -y install e2fsprogs-devel krb5 krb5-devel libidn libidn-devel
yum -y install openssl openssl-devel vim-minimal nano sendmail
yum -y install fonts-chinese gettext gettext-devel
yum -y install gmp-devel pspell-devel
yum -y install readline* libxslt* pcre* net-snmp* gmp* libtidy*
yum -y install ImageMagick* subversion*

以上的包有可能fonts-chinese和pspell-devel安装不上,但是没有什么影响。
安装mysql比较肯爹的时你不能直接使用yum安装,对应会安装成mariabdb,我也不知道为什么解决方法是使用wget手动下载安装

//Step1: 检测系统是否自带安装MySQL

1
yum list installed | grep mysql

//Step2: 删除系统自带的mysql及其依赖 命令:

1
yum -y remove mysql-libs.x86_64

//Step3: 给CentOS添加rpm源,并且选择较新的源 命令:

1
2
3
4
5
6
7
wget -i http://dev.mysql.com/get/mysql57-community-release-el7-7.noarch.rpm
yum -y install mysql57-community-release-el7-7.noarch.rpm
yum repolist all | grep mysql
yum-config-manager --disable mysql55-community
yum-config-manager --disable mysql56-community
yum-config-manager --enable mysql57-community-dmr
yum repolist enabled | grep mysql

//Step4:安装mysql 服务器 命令:

1
yum install mysql-community-server

//Step5: 启动mysql 命令:

1
service mysqld start

//Step6: 查看mysql是否自启动,并且设置开启自启动 命令:

1
2
chkconfig --list | grep mysqld
chkconfig mysqld on

//Step7: mysql安全设置 命令:

1
mysql_secure_installation

默认root密码查看,以及设置密码:

1
2
3
4
5
6
grep "password" /var/log/mysqld.log
mysql
set global validate_password_policy=0;
set global validate_password_length=4;
set password for 'xxxx'@'localhost'=password('xxxx');
flush privileges;

设置mysql的新用户给redmine,然后创建对应数据库给权限

1
2
3
4
5
6
service mysqld start //启动mysql
mysql -uroot -p //首次mysql的密码为空
create database redmine character set utf8;
create user 'redmine'@'localhost' IDENTIFIED BY 'pwd'; //用户名: redmine; 密码:pwd
grant all privileges on redmine.* to 'redmine'@'localhost'; //最大权限
flush privileges;

安装RVM

1
2
3
4
5
curl -sSL https://get.rvm.io | bash -s stable
#或者
curl -L https://rvm.io | bash -s stable
#或者
curl -L get.rvm.io | bash -s stable

安装ruby,版本一定要是2.4.1整个过程之中最有影响的就是这个的版本

1
2
3
rvm install 2.4.1
source /etc/profile.d/rvm.sh
gem -v //如果未显示版本,重新安装ruby

修改gem的镜像地址

1
2
3
gem source -l //查看当前镜像源
gem source --remove ***
gem source -a http://ruby.taobao.org //新增gem的镜像源(确保只有ruby.taobao.org)

安装rails,这个的版本不光与ruby适配同时还要与redmine适配不能安装错了

1
2
3
4
5
gem install rails -v 4.2.4
gem install activesupport -v 4.2.6
gem install cocoapods
gem install rake
gem install mysql2

然后就是下载安装redmine3.4了

1
2
3
4
5
cd /usr/local/
svn co http://svn.redmine.org/redmine/branches/3.4-stable
mv 3.4-stable redmine
cd redmine
bundle install

配置redmine

1
2
3
4
5
6
cd /usr/local/redmine/
cp config/database.yml.example config/database.yml
vim config/database.yml //选择product部分修改数据库密码
rake generate_secret_token
RAILS_ENV=production rake db:migrate //生成表结构
RAILS_ENV=production rake redmine:load_default_data //初始化数据选择zh

启动redmine进行测试

1
/usr/local/rvm/rubies/ruby-2.4.1/bin/ruby /usr/local/redmine/bin/rails server -e production -b 0.0.0.0

没有报任何错误的话就可以关闭然后后台启动了

1
nohup /usr/local/rvm/rubies/ruby-2.4.1/bin/ruby /usr/local/redmine/bin/rails server -e production -b 0.0.0.0

默认使用3000端口输出web服务如果不能访问检查防火墙设置

安装版本不一定按照我这个其实也可以安装较新或者较久的版本但是redmine与ruby与rails的版本一定要对应不要绝对GG

本文由 唐玥璨 版权所有