CentOS 7 安装 redmine(包含MySQL安装)
在 CentOS 7 里面安装 redmine4.2.2
安装过程走了一点弯路,写下教程让大家可以尽量避坑
参考链接
官方安装教程 https://www.redmine.org/projects/redmine/wiki/Install_Redmine_421_on_Centos_7
官方文档其实已经很完善,但还存在一些问题
首先就是版本的问题,redmine 和使用到的ruby, gems, 数据库 之间存在版本兼容问题,稍微搞错可能导致要重装
其次是资源来源问题,国外的资源链接拉取慢,访问不了,要切换成国内的资源链接
1.安装必要的资源包
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 sqlite-devel wget mysql-devel httpd mod_ssl
2.安装Ruby 2.7.3
这句资源链接拉取不了
gpg2 --keyserver hkp://pool.sks-keyservers.net --recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3 7D2BAF1CF37B13E2069D6956105BD0E739499BDB
要改成
gpg2 --keyserver hkp://pgp.mit.edu --recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3 7D2BAF1CF37B13E2069D6956105BD0E739499BDB

这句资源链接拉取不了
curl -L get.rvm.io | bash -s stable
要改成
\curl -sSL https://raw.github.com/wayneeseguin/rvm/master/binscripts/rvm-installer | bash
然后执行
source /etc/profile.d/rvm.sh
rvm reload
rvm requirements run
这句就是坑,我按这个执行,默认装了2.7.4 ,到安装后期才发现是这里装错版本,导致不兼容的问题
rvm install 2.7
这里我们要特指 2.7.3
rvm install 2.7.3
验证Ruby安装成功
rvm list
ruby --version

3.安装Redmine 4.2.2
这里把安装路径设定为 /var/www/
wget https://redmine.org/releases/redmine-4.2.2.tar.gz
tar xvfz redmine-4.2.2.tar.gz
mv redmine-4.2.2 /var/www/
export REDMINE=/var/www/redmine-4.2.2
cd $REDMINE
cp config/database.yml.example config/database.yml
做一下配置文件配置,可以看到这里面是关于数据库登录名密码的一些相关配置
如果没有数据库,我们可以在此安装MySQL数据库
如果是其他数据库,可以参考官方文档 https://www.redmine.org/projects/redmine/wiki/RedmineInstall#fn1
vi config/database.yml

(按Esc输入:q 退出编辑模式,输入:wq 保存后退出)
4.安装MySQL 5.7.35
回到根目录,下载MySQL
cd ~
wget https://dev.mysql.com/get/mysql57-community-release-el7-9.noarch.rpm
rpm -ivh mysql57-community-release-el7-9.noarch.rpm
必须回到 /etc/yum.repos.d/ 路径下执行安装命令
cd /etc/yum.repos.d/
yum install mysql-server

(安装过程出现询问是否确认安装,输入y回车,这里安装要花一点时间)
启动 MySQL
systemctl start mysqld
获取安装时的临时密码
grep 'temporary password' /var/log/mysqld.log
登录mysql,输入刚刚获取的临时密码,出现mysql> 即登录成功
mysql -u root -p

修改登录密码,注意sql 语句后面要跟分号; 注意初始的密码强度校验(密码设置时必须包含大小写字母、特殊符号、数字,并且长度大于8位)
这里将密码设置为P@ssw0rd
ALTER USER 'root'@'localhost' IDENTIFIED BY 'P@ssw0rd';
创建redmine数据库,第二句里P@ssw0rd替换成自己的数据库密码
CREATE DATABASE redmine CHARACTER SET utf8mb4;
CREATE USER 'redmine'@'localhost' IDENTIFIED BY 'P@ssw0rd';
GRANT ALL PRIVILEGES ON redmine.* TO 'redmine'@'localhost';
show databases;
(mysql> exit 离开mysql)
设置开机自启动MySQL
systemctl enable mysqld
回去redmine配置文件配置数据库连接
vi config/database.yml

(输入a进入编辑模式,按Esc输入:q 退出编辑模式,输入:wq 保存后退出)
5.安装Gems 和创建Database Schema
cd $REDMINE
gem install bundler
在执行以下命令时,先出现黄色字体,耐心再等一下
bundle install --without development test


bundle exec rake generate_secret_token
执行以下两句往数据库建表并插入初始数据
RAILS_ENV=production REDMINE_LANG=en bundle exec rake db:migrate
RAILS_ENV=production REDMINE_LANG=en bundle exec rake redmine:load_default_data
6.安装Passenger 6.0.8
这里不指定版本也是会装成最新的了(我实际装了6.0.10版,不过也能兼容)
gem install passenger -v 6.0.8
yum install -y epel-release yum-utils
yum-config-manager --enable epel
yum clean all && sudo yum update -y
yum install -y pygpgme curl
curl --fail -sSLo /etc/yum.repos.d/passenger.repo https://oss-binaries.phusionpassenger.com/yum/definitions/el-passenger.repo
yum install -y mod_passenger
用这一句验证安装是否成功
/usr/bin/passenger-config validate-install
用这一句验证安装
/usr/bin/passenger-config --ruby-command

创建新的配置文件,配置redmine 网站连接
先看看本机ip
ip addr show
vi /etc/httpd/conf.d/redmine.conf
复制以下内容,修改里面的ServerName项,如无域名可以ip替代
(输入a进入编辑模式,按Esc输入:q 退出编辑模式,输入:wq 保存后退出)
PassengerRuby /usr/local/rvm/gems/ruby-2.7.3/wrappers/ruby
<VirtualHost *:80>
ServerName yourserver.domain.org
DocumentRoot "/var/www/redmine-4.2.2/public"
ErrorLog logs/redmine_error_log
LogLevel warn
<Directory "/var/www/redmine-4.2.2/public">
Options Indexes ExecCGI FollowSymLinks
Require all granted
AllowOverride all
</Directory>
7.配置权限
cd $REDMINE
cd ..
chown -R apache:apache redmine-4.2.2
chcon -R -t httpd_log_t redmine-4.2.2/log/
chcon -R -t httpd_tmpfs_t redmine-4.2.2/tmp/
chcon -R -t httpd_sys_script_rw_t redmine-4.2.2/files/
chcon -R -t httpd_sys_script_rw_t redmine-4.2.2/public/plugin_assets/
restorecon -Rv redmine-4.2.2/
8.配置环境变量
在以下文件后添加两行
vi /etc/sysconfig/httpd>
PASSENGER_COMPILE_NATIVE_SUPPORT_BINARY=0
PASSENGER_DOWNLOAD_NATIVE_SUPPORT_BINARY=0
保存退出
(输入a进入编辑模式,按Esc输入:q 退出编辑模式,输入:wq 保存后退出)
9.最后重启httpd
systemctl restart httpd
发现报错
根据提示输入
systemctl status httpd.service
看到报错提示与/etc/httpd/conf.d/redmine.conf相关
vi /etc/httpd/conf.d/redmine.conf
发现第一行不知道为什么少了Pa , 详细请看第六步最后
补齐信息后重新运行即可
systemctl restart httpd
(运行不起来多数是/etc/httpd/conf.d/redmine.conf 或者 config/database.yml 里的配置问题)
如上图,第一行是
PassengerRuby /usr/local/rvm/gems/ruby-2.7.2/wrappers/ruby
实际没有该路径,要更改为
PassengerRuby /usr/local/rvm/gems/ruby-2.7.3/wrappers/ruby
否则网站打开会报错
成功后,访问http://ip即可访问redmine

登录名admin
密码admin
如果网站打不开,可能是防火墙没有打开相关端口
查看防火墙所有开放的端口
firewall-cmd --zone=public --list-ports
开放80端口,配置立即生效
firewall-cmd --zone=public --add-port=80/tcp --permanent
firewall-cmd --reload
登陆后会要求重置密码
设置系统参数,管理员信息





浙公网安备 33010602011771号