在本教程中,我们将向您展示如何在您的 CentOS 7 服务器上安装 Redmine。 对于那些不知道的人,Redmine 是一个项目管理网络应用程序,它允许用户灵活地管理项目,同时提供强大的监控工具和广泛的插件库。 这个免费的开源解决方案提供了付费工作管理工具的替代品,并包含对 wiki、论坛、日历和信息可视化程序的支持。
本文假设您至少具备 Linux 的基本知识,知道如何使用 shell,最重要的是,您将网站托管在自己的 VPS 上。 安装非常简单,假设您在 root 帐户下运行,如果不是,您可能需要添加 ‘sudo
‘ 到命令以获取 root 权限。 我将向您展示在 CentOS 7 上逐步安装 Redmine 项目管理 Web 应用程序。
在 CentOS 7 上安装 Redmine
第 1 步。首先,让我们首先确保您的系统是最新的。
yum clean all yum -y install epel-release yum -y update
步骤 2. 安装所有依赖项。
安装 Redmine 所需的所有依赖项:
yum install zlib-devel curl-devel openssl-devel httpd-devel apr-devel apr-util-devel mysql-devel ftp wget ImageMagick-devel gcc-c++ patch readline readline-devel zlib libyaml-devel libffi-devel make bzip2 autoconf automake libtool bison iconv-devel subversion
步骤 3. 安装 Ruby 和 RVM。
Redmine 需要 Ruby。 因此,首先,您需要安装允许管理多个 ruby 环境的 Ruby 版本管理器:
gpg2 --keyserver hkp://keys.gnupg.net --recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3 curl -L https://get.rvm.io | bash -s stable --ruby=2.2.5
现在我们必须添加 .bashrc 文件,以便它可以自动重新加载并将其添加到 .bashrc 文件中,运行以下命令:
echo '[[ -s "/usr/local/rvm/scripts/rvm" ]] && source "/usr/local/rvm/scripts/rvm"' >> ~/.bashrc
使用以下命令重新加载 .bashrc 文件:
source ~/.bashrc
现在运行如下命令来检查 Ruby 和 RVM 版本:
ruby -v rvm -v
步骤 4. 安装 MySQL 服务器。
需要配置 MySQL 以便 Redmine 可以存储数据,所以我们将安装 MySQL 服务器:
rpm -Uvh https://dev.mysql.com/get/mysql57-community-release-el7-9.noarch.rpm yum repolist yum install mysql-server
现在开始 mysqld
服务使用 systemctl
命令如下图:
systemctl start mysqld
默认情况下,MySQL 未加固。 您可以使用 mysql_secure_installation
脚本。 您应该仔细阅读下面的每个步骤,这些步骤将设置 root 密码、删除匿名用户、禁止远程 root 登录、删除测试数据库和访问安全 MySQL。
mysql_secure_installation
像这样配置它:
- Set root password? [Y/n] y - Remove anonymous users? [Y/n] y - Disallow root login remotely? [Y/n] y - Remove test database and access to it? [Y/n] y - Reload privilege tables now? [Y/n] y
接下来,我们需要登录 MySQL 控制台并为 Redmine 创建一个数据库。 运行以下命令:
mysql -u root -p
这将提示您输入密码,因此输入您的 MySQL 根密码并点击 Enter. 登录到数据库服务器后,您需要为 Redmine 安装创建数据库:
CREATE DATABASE redmin GRANT ALL PRIVILEGES ON redmine.* TO 'redmine'@'localhost' IDENTIFIED BY 'PASSWORD'; FLUSH PRIVILEGES; \q
步骤 5. 安装乘客和 Nginx。
乘客 是运行您的 Web 应用程序然后与 Web 服务器通信的应用程序服务器。 我们将安装它并将其与 Nginx 集成:
gem install passenger --no-ri --no-rdoc passenger-install-nginx-module
您将被要求提供一些信息,然后它将安装 Nginx。 默认安装目录是 /opt/nginx
. 当然,你可以改变它。 在其中,编辑 nginx.conf
.
在第 23 行,粘贴以下内容:
include vhost/*.conf;
Save 和 close 文件。 接下来,为虚拟主机配置文件创建一个 vhost 目录:
mkdir -p /opt/nginx/conf/vhost
在此目录中,创建一个 Redmine.conf 文件。 将以下内容粘贴到该文件中:
server { listen 80; server_name yourdomain.com; root /var/www/html/redmine/public; passenger_enabled on; client_max_body_size 10m; # Max attachemnt size # redirect server error pages to the static page /50x.html # error_page 500 502 503 504 /50x.html; location = /50x.html { root html; } }
重新启动网络服务器以使更改生效:
systemctl restart nginx systemctl enable nginx
步骤 6. 安装 Redmine。
首先,下载最新版本的Redmine,在写这篇文章的时候是3.4版本:
cd /var/www/ svn co https://svn.redmine.org/redmine/branches/3.4-stable redmine
接下来,更改当前工作目录和示例配置文件:
cd redmine cp config/configuration.yml.example config/configuration.yml cp config/database.yml.example config/database.yml
对 database.yml 文件进行以下更改:
nano config/database.yml
添加以下内容:
production: adapter: mysql2 database: redmine host: localhost username: redmine password: PASSWORD encoding: utf8
运行以下命令将所有者更改为用户和组nobody:
mkdir -p tmp tmp/pdf public/plugin_assetssud chown -R nobody:nobody files log tmp public/plugin_assetssudo chmod -R 775 files log tmp public/plugin_assets
为 Redmine 安装 bundler 和 gem 依赖项:
gem install bundlerbundle install --without development test
使用以下命令生成秘密令牌:
bundle exec rake generate_secret_token RAILS_ENV=production bundle exec rake db:migrate RAILS_ENV=production bundle exec rake redmine:load_default_data
最后,重新启动 Nginx 网络服务器以使更改生效:
systemctl restart nginx
步骤 7. 访问 Redmine。
默认情况下,Redmine 将在 HTTP 端口 80 上可用。 打开您喜欢的浏览器并导航到 https://mydomain.com
并使用默认凭据完成安装所需的步骤(admin/admin)。 如果您使用防火墙,请打开端口 80 以启用对控制面板的访问。
恭喜! 您已成功安装 Redmine。 感谢您使用本教程在 CentOS 7 系统上安装 Redmine 项目管理 Web 应用程序。 如需更多帮助或有用信息,我们建议您查看 Redmine官方网站.