如何在 CentOS 7 上安装 Redmine

在本教程中,我们将向您展示如何在您的 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官方网站.