如何在Ubuntu 22.04上安装Redmine项目管理工具如何在Ubuntu 22.04上安装Redmine项目管理工具如何在Ubuntu 22.04上安装Redmine项目管理工具如何在Ubuntu 22.04上安装Redmine项目管理工具
  • 文章
  • 正则表达式
    • 工具
  • 登录
找到的结果: {phrase} (显示: {results_count} 共: {results_count_total})
显示: {results_count} 共: {results_count_total}

加载更多搜索结果...

搜索范围
模糊匹配
搜索标题
搜索内容
发表 admin at 2025年2月28日
类别
  • 未分类
标签

如何在Ubuntu 22.04上安装Redmine项目管理工具

本教程适用于这些操作系统版本

  • Ubuntu 22.04(Jammy Jellyfish)
  • Ubuntu 20.04(Focal Fossa)

在此页

  1. 先决条件
  2. 安装依赖项
  3. 配置 MySQL 服务器
  4. 安装红矿
  5. 为 Redmine 设置虚拟主机
  6. 设置 UFW 防火墙
  7. Redmine 安装
  8. 结论

Redmine 是免费的开源项目管理和问题跟踪工具。其基于网络的应用软件,主要用Ruby on Rails编写。它是跨平台的,支持多数据库和多语言。

Redmine 非常灵活,可以用于不同类型的组织和项目,从小型、中型或大型组织。它允许您创建和管理多个项目,每个项目都有自己的 Wiki、论坛、问题跟踪等。此外,它还允许您根据您的组织需求创建自定义角色等等。

Redmine 在 GNU GPL v2 许可证下发布,可以安装在任何操作系统上,如 Linux、Windows 或 macOS。它支持不同类型的数据库,包括 PostgreSQL、MySQL 和 SQLite(默认)。

在本指南中,您将在 Ubuntu 22.04 服务器上安装带有 Apache2 Web 服务器和 MySQL 服务器的 Redmine。您还将使用 SSL 证书保护 Redmine 安装。

先决条件

本教程需要满足以下要求:

  • Ubuntu 22.04 服务器 - 此示例使用主机名为 redmine-server 的 Ubuntu 服务器。
  • 具有 sudo root 权限的非 root 用户 - 但您也可以使用 root 用户。
  • 指向您的服务器 IP 地址的域名 - 对于生产,您必须确保您的域名指向您的服务器 IP 地址。

一切就绪后,您现在可以继续进行 Redmine 安装的第一步。

安装依赖

Redmine 是一个开源项目管理和问题跟踪工具,主要使用 Ruby 和 Ruby on Rails (RoR) 编写。要安装Redmine,必须先安装Ruby,然后才能安装其他依赖,如web服务器Apache2和使用MySQL服务器的数据库。

在此示例中,您将使用 Apache2 Web 服务器和 MySQL 服务器运行 Redmine。

在开始安装软件包之前,请运行下面的 apt 命令来更新和刷新您的 Ubuntu 软件包索引。

sudo apt update

更新存储库后,通过下面的 apt 命令安装一些以下包依赖项。

使用此命令,您将安装 Apache2 Web 服务器,然后安装 linapache2-mod-passenger,后者将用于设置 RoR 应用程序以便在 Apache2 下运行。您还将安装 Ruby 包。

sudo apt install apache2 ruby ruby-dev build-essential libapache2-mod-passenger libmysqlclient-dev

当提示确认安装时,输入 y 然后按 ENTER 继续。

Apache2和Ruby安装完成后,运行以下命令安装MySQL服务器。 Redmine 支持多种 RDBMS,例如 PostgreSQL、MySQL/MariaDB 和 SQLite。在此示例中,您将使用 MySQL 服务器。

sudo apt install mysql-server

在提示确认安装时输入 y,然后按 ENTER 继续。

对于 Redmine 安装,您还需要在 Ubuntu 服务器上安装一个捆绑器。 bundler 是一个命令行,用于管理 Ruby Gems 包。

运行以下命令将捆绑器安装到您的系统。

sudo gem install bundler

安装捆绑器后,您将看到如下输出:

最后,通过下面的 systemctl 命令验证 Apache2 和 MySQL 服务。这将确保 Apache2 和 MariaDB 服务都在运行和启用。

验证 Apache2 服务。

sudo systemctl is-enabled apache2
sudo systemctl status apache2

您可以在下方看到 Apache2 服务已启用并将在系统启动时自动运行。并且服务的当前状态是运行中。\

验证 MySQL 服务。

sudo systemctl is-enabled mysql
sudo systemctl status mysql

您将看到类似如下的输出 - MySQL 服务已启用并将在启动时自动运行。而MySQL服务的当前状态是running。

配置 MySQL 服务器

安装 Apache2 和 MySQL 服务器后,您将设置 MySQL root 密码并通过 mysql_secure_installation 保护部署。然后,您还将为 Redmine 创建一个新的 MySQL 数据库和用户。

通过下面的 mysql 命令登录 MySQL。

sudo mysql

现在通过以下查询更改 MySQL root 密码。并确保使用您的密码更改密码。然后,键入 quit exiting 从 MySQL shell。

ALTER USER  IDENTIFIED WITH mysql_native_password BY 'password';
quit

接下来,运行以下命令以开始保护 MySQL 服务器部署。

sudo mysql_secure_installation

当提示输入 MySQL root 密码时,请输入正确的密码。

然后,您将被要求进行其他 MySQL 配置,例如禁用 root 用户的远程登录、删除匿名用户、删除默认数据库 test 以及重新加载所有表权限。对于所有这些 MySQL 服务器设置,输入 Y 以确认配置。

在保护 MySQL 部署之后,是时候为 Redmine 设置一个新的数据库和用户了。

通过下面的 mysql 命令登录到 MySQL shell。系统将要求您输入 MySQL root 密码,输入 MySQL root 用户的正确密码,然后按 ENTER。

sudo mysql -u root -p

现在运行以下查询为 Redmine 创建一个新的 MySQL 数据库和用户。在此示例中,您将使用密码 secretPassword 创建一个新数据库和用户 redmine。您可以用您的密码替换数据库密码。

CREATE DATABASE redmine CHARACTER SET utf8mb4;
CREATE USER 'redmine'@'localhost' IDENTIFIED BY 'secretPassword';
GRANT ALL PRIVILEGES ON redmine.* TO 'redmine'@'localhost';
FLUSH PRIVILEGES;

接下来,运行以下查询来验证 MySQL 用户 redmine 的权限。确保 MySQL 用户 redmine 具有数据库 redmine 的权限。

SHOW GRANTS FOR ;
quit

您可以在下方看到 MySQL 用户 [email 具有数据库 redmine 的权限。

最后,键入 quit 从 MySQL shell 注销。

安装所有依赖项并创建 MySQL 数据库和用户后,您就可以在 Ubuntu 服务器上安装 Redmine 项目管理工具了。

安装红矿

在此步骤中,您将安装最新版本的 Redmine。在撰写本文时,Redmine 的最新版本是 v5.0.2。

您将下载 Redmine 源代码、配置数据库、通过构建安装 Ruby 依赖项、设置 Redmine 秘密令牌并迁移数据库。

在此示例中,您将在目录 /opt/redmine 中安装 Redmine。

移动到 /opt 目录。

cd /opt/

现在,使用下面的 wget 命令下载 Redmine 源代码。下载后,您将在 /opt 目录中看到文件 redmine-5.0.2.tar.gz。

wget https://www.redmine.org/releases/redmine-5.0.2.tar.gz

接下来,运行以下命令来提取 Redmine 源代码 redmine-5.0.2.tar.gz 并为 Redmine 目录创建一个新的符号链接到 /opt/redmine。

tar -xvzf redmine-5.0.2.tar.gz
sudo ln -s redmine-5.0.2 redmine

主要的 Redmine 安装目录将是 /opt/redmine。

移动到 /opt/redmine 目录。

cd /opt/redmine/

将默认数据库配置 config/database.yml.example 复制到 config/database.yml。然后,使用 nano 编辑器打开数据库配置文件 config/database.yml。

cp config/database.yml.example config/database.yml
nano config/database.yml

在生产部分,更改 MySQL 数据库和用户的详细信息。请务必为 Redmine 使用正确的数据库用户和密码。

production:
  adapter: mysql2
  database: redmine
  host: localhost
  username: redmine
  password: "secretPassword"
  # Use "utf8" instead of "utfmb4" for MySQL prior to 5.7.7
  encoding: utf8mb4

完成后保存文件并退出编辑器。

接下来,运行以下捆绑程序命令为 Redmine 应用程序安装 Ruby 依赖项。

bundle config set --local without 'development test'
bundle install

您将看到类似于以下内容的输出:

安装 Redmine 依赖项后,运行以下命令生成 Redmine 秘密令牌并迁移数据库。

bundle exec rake generate_secret_token
RAILS_ENV=production bundle exec rake db:migrate

在下面的截图中,你可以看到Redmine secret token的生成以及Redmine数据库迁移的过程。

最后,使用以下命令将默认值加载到您的 Redmine 安装中。当要求选择语言时,输入 en 作为英语。

RAILS_ENV=production bundle exec rake redmine:load_default_data

加载 Redmine 默认数据时,您将看到输出消息为“已加载默认配置数据”。

现在安装了 Redmine,接下来您将为 Redmine 设置 Apache2 虚拟主机。

为 Redmine 设置虚拟主机

在此步骤中,您将为 Redmine 创建一个新的 Apache2 虚拟主机配置。因此,请确保您拥有指向您的服务器 IP 地址的域名,并且已生成 SSL 证书。

运行以下命令以启用 Apache 模块 ssl 和重写。

sudo a2enmod ssl rewrite

您将看到如下输出:

现在,使用 nano 编辑器创建一个新的 Apache2 虚拟主机配置 /etc/apache2/sites-available/redmine.conf。

sudo nano /etc/apache2/sites-available/redmine.conf

将以下配置添加到文件中。并确保使用您的配置更改域名和 SSL 证书的路径。

<VirtualHost *:80>

    ServerName redmine.hwdomain.io
    ServerAdmin

    # Redirect Requests to SSL
    Redirect permanent "/" "https://redmine.hwdomain.io/"

</VirtualHost>

<IfModule mod_ssl.c>

    <VirtualHost *:443>

        ServerName redmine.hwdomain.io
        RailsEnv production
        DocumentRoot /opt/redmine/public

        ErrorLog ${APACHE_LOG_DIR}/redmine.hwdomain.io.error.log
        CustomLog ${APACHE_LOG_DIR}/redmine.hwdomain.io.access.log combined

        SSLEngine on
        SSLCertificateFile /etc/letsencrypt/live/redmine.hwdomain.io/fullchain.pem
        SSLCertificateKeyFile /etc/letsencrypt/live/redmine.hwdomain.io/privkey.pem

        <Directory "/opt/redmine/public">
            Allow from all
            Require all granted
        </Directory>

    </VirtualHost>

</IfModule>

保存文件并退出编辑器。

接下来,运行以下命令激活虚拟主机文件 redmine.conf。然后,验证您的 Apache2 配置以确保您具有正确的配置。

sudo a2ensite redmine.conf
sudo apachectl configtest

当您具有正确的 Apache2 配置时,您现在将获得输出消息,例如 \Syntax OK\。

最后,通过下面的 systemctl 命令重启 Apache2 服务以应用新的虚拟主机文件。

sudo systemctl restart apache2

至此,Redmine安装完成,虚拟主机配置完成。您现在应该通过您的域名访问您的 Redmine 安装。

设置 UFW 防火墙

在生产环境中,您应该打开防火墙。对于Ubuntu系统,可以使用默认的防火墙UFE(Uncomplicated Firewall)。

现在,您将添加打开默认 HTTP 和 HTTPS 服务的 UFW 规则,以便可以从网络外部访问 Redmine。

运行以下 ufw 命令以将默认的 \OpenSSH\ 应用程序配置文件添加到 UFW。然后,启动并启用 UFW 防火墙。

sudo ufw allow "OpenSSH"
sudo ufw enable

当要求确认时,输入 y 启动并启用 UFW 防火墙服务。

接下来,运行以下命令将应用程序配置文件“Apache Full”添加到防火墙。然后,通过以下命令验证 UFW 状态。

sudo ufw allow "Apache Full"
sudo ufw status

您应该会看到 UFW 防火墙状态处于活动状态,并且当前启用的应用程序配置文件是 OpenSSH 和 \Apache Full\。这将打开默认的 SSH 端口 22 以及 HTTP 和 HTTPS 服务端口 80 和 443。

红矿安装

打开网络浏览器并访问您的 Redmine 安装的域名(即:https://redmine.hwdomain.io/)。

您现在将看到 Redmine 项目管理和问题跟踪工具的主页默认值。单击“登录”以登录到 Redmine 管理仪表板。

输入默认的 Redmine 管理用户和密码“admin - admin”。

登录后,系统会要求您更改 Redmine 的默认密码。输入 Redmine 安装的新密码,然后单击“应用”。

最后,编辑您的 Redmine 管理员用户的详细信息,然后单击“保存”以应用配置。您现在已经配置了 Redmine 的基础。

要添加新项目,请单击“项目”菜单。您应该能够在 Redmine 上创建、编辑或删除项目。

现在,如果你想为 Redmine 添加配置,请单击“管理”菜单。有了它,您可以添加更多用户、设置组、定义角色、通过第三方应用程序(如 LDAP)启用身份验证等等。

结论

在本教程中,您已经在 Ubuntu 22.04 服务器上安装和配置了 Redmine 项目管理和问题跟踪工具。您还为 Redmine 配置了 MariaDB 数据库和 Nginx Web 服务器。此外,您还使用 SSL 证书保护了 Redmine 安装。

您现在已经在系统上安装了 Redmine,您可以通过添加一些额外的配置来扩展您的 Redmine 安装,例如将 Redmine 集成到您当前的基础架构中,例如添加 LDAP 身份验证,以及与 SVN、Git 和 Mercurial 等 SCM 集成。此外,您可以根据您的组织或公司添加角色。

©2015-2025 艾丽卡 support@alaica.com