centos7 redmine安装过程

时间:2022-03-11 21:07:41

redmine 部署过程

redmin官方文档写的太烂加上不熟悉ruby搞了半天,回到家后觉得还是记录下好,希望可以帮助有需要的人,少走弯路.

版本说明

下面的版本很重要
redmine 版本 3.3 官方竟然给了个百度云盘

wget http://olvimidkv.bkt.clouddn.com/redmine-3.3.0.tar.gz

系统版本 centos7.2

ruby 版本 2.3.3
gem 版本 2.6.12
rails 版本 4.2.6

准备工作

新装系统的话就更新下吧,不是的话,就尽量不要这样更新

yum update

安装epel源

yum install epel-release 

依赖

yum install curl-devel sqlite-devel libyaml-devel 

开始部署

ruby yum安装版本对不上 源码安装各种报错,应该是openssl版本低 于是不折腾了 直接rvm

安装rvm及ruby

rvm 可以安装管理多个ruby版本

gpg --keyserver hkp://keys.gnupg.net --recv-keys D39DC0E3    

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

source /etc/profile.d/rvm.sh  #set up system environment for Ruby, 这步不可少

rvm reload   

rvm install 2.3.3

简单的使用

rvm list 查看ruby

rvm use 2.2.0  使用ruby

rvm install xxxx 安装一个版本的ruby
 
rvm remove  xxxx   卸载一个版本的ruby

安装rails及rake

上一步安装完成之后,下面的就很简单了.

如果嫌慢可以换阿里的源

gem source -r https://rubygems.org/
gem source -a http://mirrors.aliyun.com/rubygems/

安装

gem install rake -v 12.0.0
gem install rails -v 4.2.6

安装redmine

redmine 需要用到数据库,所以先装个mysql或者meriadb(centos7默认meriadb)
修改数据库默认字符为utf8
在数据库配置文件/etc/my.cnf(centos7在/etc/my.cnf.d/下面)的[mysqld]下面加上

character-set-server=utf8

然后启动数据库,创建一个数据库 redmine

用户名密码随意
权限如下,如果你用root这个就可以忽略.

grant all on redmine.* to redmine;
grant all on redmine.* to redmine @localhost;
set password for redmine@localhost=password('redmine');

把你下载的redmie解压放到需要放的目录下面,然后进入redmine/config,下面的操作都在这个目录下

cd  database.yml.example  database.yml

修改内容如下,数据库名不要擅自改,无论你用的是mysql还是meriadb

production:
  adapter: mysql2
  database: redmine
  host: localhost
  username: redmine
  password: "redmine"
  encoding: utf8

创建表,这一步会出现各种问题,如果按照上面的装的话,基本就没有什么问题了.

提示缺少ruby扩展,不想一个个装的话,在当前目录下

bundle install

然后

rake db:migrate RAILS_ENV="production"

载入配置

rake redmine:load_default_data RAILS_ENV="production"

这时候会提示你选择语言,输入:zh

为rails生产cookie秘钥

rake generate_secret_token

启动redmine

使用以下命令启动 -d 是把输出打印到后台,ruby使用绝对路径

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

这样会启动一个监听localhost的3000端口

可以使用

curl http://localhost:3000

检查,没问题的话,使用Nginx做个反向代理就可以了.

server {

    listen 80;
    server_name redmine.xxx.com;

    access_log  logs/redmine_access.log main;
    error_log  logs/redmine_error.log;


    location / {
        proxy_pass http://localhost:3000;
    }

}