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用户权限。