定制网站Redmine4.2.2安装部署

Redmine定制网站是基于语言的开源版的 jira + Confluence,定制网站主要适用于中小团队。定制网站目前因内部需要做问题跟踪。

环境要求:
Redmine versionSupported Ruby versionsRails version
4.1 (upcoming)Ruby 2.3, 2.4, 2.5, 2.6Rails 5.2
4.0Ruby 2.2 (2.2.2 and later), 2.3, 2.4, 2.5, 2.6Rails 5.2
3.4Ruby 1.9.3, 2.0.0, 2.1, 2.2, 2.3, 2.4Rails 4.2

ruby gem安装

# ruby下载安装https://cache.ruby-lang.org/pub/ruby/2.6/ruby-2.6.3.tar.gztar xzvf ruby-2.6.3.tar.gzcd ruby-2.6.3./configure --prefix=/usr/local/rubymake && make install# 定制网站修改环境变量vim /etc/profileexport PATH=/usr/local/ruby/bin:$PATH# gem安装https://rubygems.org/rubygems/rubygems-3.0.4.zipunzip rubygems-3.0.4.zipcd rubygems-*ruby setup.rb
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14

修改ruby定制网站源为国内阿里源:

定制网站查找默认源gem sources -l定制网站移除默认源gem sources --remove https://rubygems.org/ 添加新源gem sources -a https://mirrors.aliyun.com/rubygems/gem sources -a https://mirrors.tuna.tsinghua.edu.cn/rubygems/ (定制网站推荐清华源,定制网站我在使用阿里源安装文件超时)
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7

rails框架可以使用gem install rails -v=5.2.6 进行安装,也可以通过bundle自已查找依赖进行安装 。先说安装 bundle,如下:

gem install rakegem install bundle
  • 1
  • 2

redmine安装

数据库配置使用的mysql

mysql数据库安装不做描述。

CREATE DATABASE redmine CHARACTER SET utf8;CREATE USER 'redmine'@'localhost' IDENTIFIED BY 'mypassword';GRANT ALL PRIVILEGES ON redmine.* TO 'redmine'@'localhost';
  • 1
  • 2
  • 3
redmine下载
wget http://www.redmine.org/releases/redmine-4.2.2.tar.gztar zxvf redmine-4.2.2.tar.gzmv redmine-4.2.2 redmine
  • 1
  • 2
  • 3

修改数据库配置,Copy config/database.yml.example to config/database.yml ,修改database.yml的内容如下:

production:  adapter: mysql2  database: redmine  host: localhost  username: redmine  password: "my_password" 
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
安装依赖包

依赖包有两种,一种是OS系统依赖包,另一个是ruby需要依赖的包。先说前者,主要是ImageMagick相关包

yum install ImageMagick ImageMagick-devel
  • 1
  • 2

后者依赖包,会比较多,安装方式有两种,一种是出现个使用gem指定包名称和版本号装一个,另一种是使用bundle一键搞定。先说前者如何知道依赖什么:

[root@ config]# rake db:migrate RAILS_ENV="production"(in /opt/redmine)Could not find gem 'rails (= 5.2.6 )' in any of the gem sources listed in your Gemfile.Run `bundle install` to install missing gems.
  • 1
  • 2
  • 3
  • 4

进行数据库表结构创建操作的时候,如果缺少相关依赖会报错缺少的包名称和版本号。所需依赖关系

gem install rails -v=5.2.6gem install rouge -v=3.26.0gem install request_store -v=1.5.0gem install mini_mime -v=1.0.1gem install actionpack-xml_parser gem install roadie-rails -v=2.2.0gem install csv -v=3.1.1gem install nokogiri -v=1.11.1gem install rbpdf -v=1.20.0gem install rubyzip -v=2.3.0gem install rotp   gem install net-ldap -v=0.17.0gem install ruby-openid -v=2.9.2gem install ruby-openid gem install rack-openid gem install mini_magick -v=4.11.0gem install redcarpet -v=3.5.1gem install mysql2 -v=0.5.0gem install yard gem install mocha -v=1.4.0gem install simplecov -v=0.18.5gem install puma gem install capybara -v=3.31.0gem install selenium-webdriver gem install webdrivers -v=4.4gem install rubocop -v=1.12.0gem install rubocop-performance -v=1.10.1gem install rubocop-rails -v=2.9.0
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28

这里介绍下如何使用bundle进行安装。bundle默认不让使用root安装,需要创建一个普通用户,就是启动redmine进程的用户www吧。对该用户需要配置sudo权限,因为其中一些操作是需要使用root身份的。
需要注意,切换用户后,默认使用的源还是官方源,这个是在用户系统目前下配置的,所以切换为www用户后,重复上面切换源的步骤。

安装sudo

yum install sudo
进入root用户,打开sudoers文件

su root //进入root用户vim /etc/sudoers //打开sudo的配置文件## Next comes the main part: which users can run what software on ## which machines (the sudoers file can be shared between multiple## systems).## Syntax:####      user    MACHINE=COMMANDS#### The COMMANDS section may have other options added to it.#### Allow root to run any commands anywhere root    ALL=(ALL)       ALLwww     ALL=(ALL)       ALL
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
bundle install --without development test  //只能用普通用户执行,需要给该用户sudo权限如果有系统依赖包不存在时,会有错误提示上面gem安装完成这里跳过
  • 1
  • 2
  • 3
[root@ config]# rake db:migrate RAILS_ENV="production"上述依赖关系安装好,进行数据库表结构创建操作
  • 1
  • 2
生成秘钥,导入表结构

使用以下命令可生成新的 session 密钥:

bundle exec rake generate_secret_token
  • 1

使用如下指令进行表结构操作:

RAILS_ENV=production bundle exec rake db:migrate
  • 1

该操作和上面rake db检查包依赖的指令是一样的。

使用以下命令导入初始数据,包括默认的问题类型、工作流程等:

RAILS_ENV=production REDMINE_LANG=zh bundle exec rake redmine:load_default_data
  • 1

期间遇到如下报错:
Expected to find a manifest file in `app/assets/config/manifest.js

解决方法:vim /app/assets/config/manifest.js  ##若目录不存在则创建//= link_tree ../images//= link_directory ../javascripts .js//= link_directory ../stylesheets .css
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
启动服务

默认使用如下指令启服务,默认监听端口3000:

bundle exec rails server webrick -e production -b 0.0.0.0
  • 1

指定端口启动

 bundle exec rails server -b 0.0.0.0 -p 8080 webrick -e production -d
  • 1

默认的登录名和密码都是 admin 。登陆第一次会要求修改用户名和密码

Redmine邮件配置

[root@config]# mv configuration.yml.example configuration.yml[root@ config]# vim configuration.yml注意配置文件格式对齐问题
  • 1
  • 2
  • 3

参考:https://blog.csdn.net/rulon147/article/details/48729437

添加用户邮件收件箱连接地址修改

[root@ config]# vim settings.yml找到对应字段host_name:  default: IP:port
  • 1
  • 2
  • 3
  • 4
网站建设定制开发 软件系统开发定制 定制软件开发 软件开发定制 定制app开发 app开发定制 app开发定制公司 电商商城定制开发 定制小程序开发 定制开发小程序 客户管理系统开发定制 定制网站 定制开发 crm开发定制 开发公司 小程序开发定制 定制软件 收款定制开发 企业网站定制开发 定制化开发 android系统定制开发 定制小程序开发费用 定制设计 专注app软件定制开发 软件开发定制定制 知名网站建设定制 软件定制开发供应商 应用系统定制开发 软件系统定制开发 企业管理系统定制开发 系统定制开发