在centOS7.3服务器上配置redmine-3.4.4

服务器信息

centOS Linux release 7.3.1611

各软件版本

MySQL 5.7:

redmine 3.4.4

RVM 1.29.3

Ruby 2.4.1

Rails 4.2.8

安装数据库

由于centOS 7 中预装了MariaDB,所以直接安装MySQL会安装不成功,我们将分步安装MySQL:

  1. 卸载原有的MariaDB:
    yum remove -y mariadb-libs

  2. 下载域名安装MySQL所需的依赖:
    https://dev.mysql.com/downloads/repo/yum/
    可以得到一个rpm文件

  3. 将这个包安装上:
    rpm -Uvh rpm包

  4. 执行mysql安装指令:
    yum install mysql-community-server

  5. 测试安装是否成功:
    service mysqld start
    看是否能正常启动,如果可以即为安装成功。

至此,MySQL数据库安装成功,但是另外有一个新的问题,在MySQL5.7里边为root随机生成了一个密码,致使我们直接输入命令mysql无法登入,密码保存在/var/log/mysqld.log文件中,于是我们需要找到此密码以登入MySQL数据库进行修改密码。

执行 grep ‘temporary password’ /var/log/mysqld.log 指令,能帮我们定位出MySQL的随机密码,即图中红色框所选区域。
红色框所选区域即为初始密码
使用 mysql -u root -p 然后使用此密码即可登录MySQL数据库。

然后执行 alter user root@localhost identified by ‘密码’;去重置密码。

将mysql数据库里边新建一个名为redmine的数据库。
官方安装地址:
http://www.redmine.org/projects/redmine/wiki/RedmineInstall

  1. create database redmine default character set utf8 default collate utf8_general_ci;
  2. grant all privileges on redmine.* to redmine@'%' identified by '密码' with grant option;
  3. flush privileges;

关于数据库的配置到此基本告一段落,后续将继续配置开机自启动等一系列操作。

下载并安装redmine

官方地址:http://www.redmine.org/projects/redmine/wiki/Download
在此我选择了redmine3.4.4版本

  1. 下载并解压,建议解压到项目根目录
  2. 根据配置文件(config)里边官方给出的example文件database.yml.example,copy并去掉example后缀作为数据库配置文件。
cp config/database.yml.example config/database.yml

修改production参数如下:

production:
  adapter: mysql2
  database: redmine
  host: localhost
  username: redmine
  password: Jay@2018

安装RVM

  • 安装curl

回到root目录下安装curl

yum install curl
  • 安装RVM
curl -L get.rvm.io | bash -s stable

如果出现失败的字眼,即执行提示命令,也就是下边的代码:curl -sSL https://rvm.io/mpapis.asc | gpg2 --import
然后继续安装RVM:

curl -L get.rvm.io | bash -s stable

根据提示配置是文件生效:

source /etc/profile.d/rvm.sh
  • 安装RVM依赖
rvm requirements

以及RVM推荐的依赖:

rvmsudo yum install -y gcc-c++ patch readline readline-devel zlib zlib-devel libyaml-devel libffi-devel openssl-devel make bzip2 autoconf automake libtool bison iconv-devel
  • 安装Ruby

查看已有版本,并选择合适版本安装:

rvm list known
rvm install 2.4
  • 安装Rails
gem install rails

如果有报错找不到jquery-rails的可以执行下边的指令:

gem install jquery-rails
gem install rake
gem install mysql2
  • 可能需要的依赖:
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*

添加一个系统用户redmine

在执行bundle install时提示不建议使用root用户进行操作,所以需要新建用户并给予一定权限,并非不可用root用户执行bundle install

新建redmine用户

useradd –d /usr/redmine -m redmine

修改其账号密码

用户: redmine

passwd redmine
new password: 密码

给新建的redmine用户赋予root权限

  • 首先切换回root用户
  • 添加Sudoku文件的写权限
chmod u+w /etc/sudoers
  • 对sudoers文件进行编辑
vi /etc/sudoers
这里写代码片

找到 root ALL=(ALL) ALL这一行,在下面添加 用户名 ALL=(ALL) ALL (本例用户名是redmine)

  • 撤销sudoers文件的写权限
chmod u-w /etc/sudoers

然后redmine用户就有了root权限

安装依赖

将用户切换到redmine所推荐的非root用户(本例是redmine),然后安装依赖:

su redmine
bundle install

如果提示用户没有写的权限,则需要赋予其写权限:

sudo chmod -R 777 /usr/local/rvm/
sudo chmod -R 777 /opt/redmine/

添加会话缓存

在依赖安装成功以后,依然使用redmine用户进行后续操作,添加会话缓存:

bundle exec rake generate_secret_token

生成表结构

RAILS_ENV=production bundle exec rake db:migrate

设置语言

执行代码过程中会让你选择语言,推荐输入中文(zh)

RAILS_ENV=production bundle exec 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

运行Webrick服务,启动项目

bundle exec rails server webrick -e production -b 0.0.0.0 -p 3000 &

官方命令为bundle exec rails server webrick -e production,这里做了一些变动 & 让程序在后台自动运行,-b 0.0.0.0 授权所有IP访问权限,-p 3000 端口,此时使用ctrl + C无法结束服务,需要杀掉进程。

还有一种启动项目的指稍有不同:

nohup bundle exec rails server webrick -e production -b 0.0.0.0 -p 3000 &

nohup使原程序的的标准输出自动改向到当前目录下的nohup.out文件,起到了log的作用。如果当前目录的 nohup.out 文件不可写,输出重定向到 $HOME/nohup.out 文件中。

后台运行服务的关闭方法

由于此时的服务是在后台自动执行,所以ctrl + C无法结束服务,常用于更新配置文件后重启服务时使用:
进入到redmine目录下,进入 /tmp/pids 目录下执行 more server pids 以获取webrick服务的进程(也就是pid),然后执行代码 kill -9 pid 此处的pid就是刚刚获取到的webrick的pid。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值