CentOS上安装Redmine详细指南
一、前言

Redmine 是一个开源的项目管理和问题跟踪工具,它提供了多项目支持、wiki、问题跟踪系统、论坛、日历、邮件提醒等功能,本文将详细介绍如何在centos系统上安装和配置Redmine。
二、安装前准备
更新系统
- sudo yum update y
安装必要的软件和依赖项
- sudo yum install epelrelease y
- sudo yum groupinstall "Development Tools" y
- sudo yum install wget curl policycoreutilspythonutils bzip2 gccc++ patch readline readlinedevel zlib zlibdevel libyamldevel libffidevel openssldevel make autoconf automake libtool bison sqlitedevel y
安装数据库
我们将使用MySQL作为数据库服务器。
- sudo yum install mysqlserver mysqldevel y
- sudo systemctl start mysqld
- sudo systemctl enable mysqld
运行MySQL安全脚本以提高安全性并设置root用户密码:
- sudo mysql_secure_installation
创建一个新的MySQL数据库和用户:
- sudo mysql u root p
- CREATE DATABASE redmine CHARACTER SET utf8mb4;
- CREATE USER 'redmine'@'localhost' IDENTIFIED BY 'password';
- GRANT ALL ON redmine.* TO 'redmine'@'localhost';
- FLUSH PRIVILEGES;
- EXIT;
三、安装Redmine

下载并解压Redmine
确保你已经安装了Git:
- sudo yum install git y
克隆Redmine仓库:
- cd /opt
- sudo git clone https://github.com/redmineorg/redmine.git
- cd redmine
配置数据库
复制示例配置文件并编辑:
- cp config/database.yml.example config/database.yml
- nano config/database.yml
在文件中添加以下内容(根据你的实际数据库配置进行修改):
- production:
- adapter: mysql2
- database: redmine
- host: localhost
- username: redmine
- password: password
- encoding: utf8mb4
保存并退出编辑器。
安装Ruby和Bundler
- sudo yum install ruby rubygems rubydevel y
- gem install bundler
安装Redmine依赖包
- bundle install without development test postgresql sqlite mysql2
生成密钥并迁移数据库
- bundle exec rake generate_secret_token
- RAILS_ENV=production bundle exec rake db:migrate
加载默认数据
- RAILS_ENV=production bundle exec rake redmine:load_default_data
启动Redmine
- RAILS_ENV=production bundle exec rails server e production b 0.0.0.0
注意:默认情况下,Redmine将在3000端口启动,如果你需要在其他端口上运行,可以使用p
选项,例如p 3001
。

四、配置Web服务器(Nginx)
为了能够在外部访问Redmine,我们需要配置一个Web服务器,这里我们使用Nginx。
安装Nginx
- sudo yum install nginx y
配置Nginx虚拟主机
创建一个新的NGINX配置文件:
- sudo nano /etc/nginx/conf.d/redmine.conf
添加以下内容:
- upstream redmine_app {
- server unix:/tmp/sockets/puma.sock;
- }
- server {
- listen 80;
- server_name your_domain_or_ip;
- root /opt/redmine/public;
- passenger_enabled on;
- passenger_ruby /usr/bin/ruby;
-
- location / {
- proxy_pass http://redmine_app;
- passenger_base_uri /redmine;
- passenger_app_root /opt/redmine;
- }
- }
保存并退出编辑器。
启动Nginx并设置开机自启
- sudo systemctl restart nginx
- sudo systemctl enable nginx
五、完成安装与访问
你可以通过浏览器访问http://your_domain_or_ip/redmine来完成Redmine的安装向导,按照屏幕上的指示完成安装过程,即可开始使用Redmine。
六、FAQs
Q1: Redmine安装过程中出现“Gem::Ext::BuildError: ERROR”错误怎么办?
A1: 这个错误通常是由于缺少某些库导致的,尝试安装以下库:
- sudo yum install zlibdevel curldevel openssldevel mariadbdevel rubydevel y
然后再重新运行安装命令。
Q2: Redmine启动后无法连接到数据库怎么办?
A2: 确保你的数据库服务正在运行,并且配置文件中的数据库设置正确,你可以手动测试数据库连接:
- sudo mysql u redmine p h localhost e "USE redmine;"
如果仍然无法连接,请检查防火墙设置和MySQL用户权限。