当前位置: 首页 > news >正文

本地搭建并使用 Redmine 详细教程

引言

本教程详细指导你在本地环境中搭建并使用 Redmine。Redmine 是一个开源的项目管理平台,基于 Ruby on Rails,支持问题跟踪、论坛、Wiki、Gantt 图和版本控制集成。它适合团队协作、bug 跟踪和项目规划。我们将使用 Ubuntu Linux 系统(推荐 22.04 LTS)作为示例,通过手动安装方式进行搭建。

注意:本教程假设你有基本的 Linux 命令和 Ruby 知识。

系统要求

  • 操作系统:Ubuntu 20.04 或更高版本(其他 Linux 发行版需调整)。
  • 硬件:至少 2GB RAM、1 核 CPU、10GB 可用磁盘空间(推荐 4GB RAM)。
  • 网络:静态 IP(可选);端口 3000(默认)或 80/443(使用 Nginx)。
  • 软件:Ruby 2.7+、Rails 6.1+、数据库(如 MySQL 或 PostgreSQL)、ImageMagick(附件处理)。

如果不符合要求,Redmine 可能运行缓慢。

系统架构概述

以下是 Redmine 的基本架构图:

Redmine Components
HTTP/HTTPS
Web 服务器 (e.g., Puma/WEBrick)
Ruby on Rails 应用 (Redmine)
数据库 (MySQL/PostgreSQL)
文件存储 (Attachments/Wiki)
后台任务 (Email/Async jobs)
用户浏览器

这个图展示了 Redmine 的核心:Rails 应用处理逻辑,数据库存储数据。

安装步骤

我们分步进行安装和配置。以下流程图概述整个过程:

准备系统
安装 Ruby 和 Rails
安装数据库
下载和配置 Redmine
启动 Redmine
初始设置和使用
测试和优化

步骤 1: 更新系统和安装依赖

  1. 打开终端,运行:

    sudo apt update
    sudo apt upgrade -y
    
  2. 安装基本依赖:

    sudo apt install -y build-essential libssl-dev libreadline-dev zlib1g-dev libyaml-dev libxml2-dev libxslt1-dev libcurl4-openssl-dev libffi-dev git imagemagick
    

步骤 2: 安装 Ruby 和 Rails

使用 rbenv(推荐)管理 Ruby 版本。

  1. 安装 rbenv:

    git clone https://github.com/rbenv/rbenv.git ~/.rbenv
    echo 'export PATH="$HOME/.rbenv/bin:$PATH"' >> ~/.bashrc
    echo 'eval "$(rbenv init -)"' >> ~/.bashrc
    source ~/.bashrc
    git clone https://github.com/rbenv/ruby-build.git ~/.rbenv/plugins/ruby-build
    
  2. 安装 Ruby(例如 3.0.0,检查 Redmine 兼容版本):

    rbenv install 3.0.0
    rbenv global 3.0.0
    
  3. 安装 Rails 和 Bundler:

    gem install bundler
    gem install rails -v 6.1.7  # 检查 Redmine 要求的版本
    

步骤 3: 安装数据库

我们使用 MySQL 为例(PostgreSQL 类似)。

  1. 安装 MySQL:

    sudo apt install -y mysql-server mysql-client libmysqlclient-dev
    sudo mysql_secure_installation  # 安全配置
    
  2. 创建数据库和用户:

    sudo mysql -u root -p
    

    在 MySQL shell 中:

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

数据库设置序列图:

UserMySQL登录 root授权创建数据库 redmine创建用户 redmine授予权限完成UserMySQL

步骤 4: 下载和配置 Redmine

  1. 下载 Redmine(最新稳定版,从 redmine.org):

    wget https://www.redmine.org/releases/redmine-5.1.3.tar.gz  # 检查最新版本
    tar xvf redmine-5.1.3.tar.gz
    mv redmine-5.1.3 /opt/redmine
    cd /opt/redmine
    
  2. 配置数据库:

    • 复制模板:cp config/database.yml.example config/database.yml
    • 编辑 nano config/database.yml,在 production 部分设置:
      production:adapter: mysql2database: redminehost: localhostusername: redminepassword: "your_password"encoding: utf8mb4
      
  3. 安装 gem 依赖:

    bundle config set --local without 'development test'
    bundle install
    
  4. 生成密钥并迁移数据库:

    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_LANG=en  # 或 zh 为中文
    

步骤 5: 启动 Redmine

  1. 启动内置服务器(开发用):

    bundle exec rails server webrick -e production
    
  2. 在浏览器访问 http://localhost:3000(或你的 IP:3000)。

对于生产,安装 Passenger + Nginx(见优化部分)。

步骤 6: 初始设置和使用

  1. 登录:默认 admin/admin,立即更改密码(Administration > Users)。
  2. 创建项目:Projects > New project,设置名称、标识符。
  3. 添加用户:Administration > Users > New user,分配角色。
  4. 使用功能
    • 问题跟踪:Issues > New issue。
    • Wiki:启用模块,添加页面。
    • 集成 SCM(如 Git):在项目设置中配置仓库。
    • Gantt 图:Projects > Gantt。

使用流程图:

登录
创建项目
添加用户/角色
创建 Issue
使用 Wiki/论坛
查看 Gantt/日历

安全和优化

  • 生产服务器:安装 Nginx 和 Passenger:

    sudo apt install -y nginx
    gem install passenger
    passenger-install-nginx-module
    

    配置 Nginx 指向 Redmine。

  • 备份:定期备份数据库(mysqldump)和文件(/opt/redmine/files)。

  • 安全:启用 HTTPS(Let’s Encrypt),使用强密码,限制访问。

  • 更新:下载新版 Redmine,运行迁移。

  • Docker 替代docker run -d -p 3000:3000 redmine(简单但自定义少)。

常见问题和故障排除

  • Gem 安装失败:检查 Ruby 版本,确保 bundle install 无缺失依赖。
  • 数据库连接错误:验证 database.yml 和 MySQL 用户/密码。
  • 端口占用:用 sudo netstat -tuln 检查 3000。
  • 性能慢:增加 RAM 或使用 PostgreSQL。
  • 邮件配置:编辑 config/configuration.yml,设置 SMTP。
  • 日志:查看 log/production.log。

如果问题,参考 redmine.org/wiki 或论坛。

结语

恭喜!你现在有了一个本地 Redmine 实例!它可以用于项目管理、团队协作等。探索插件市场添加功能,如 Agile 或主题。本教程创建基于 Redmine 5.1.x。


文章转载自:

http://VbWJYB7o.gqjwz.cn
http://6IJyIBiC.gqjwz.cn
http://DAWgJCZg.gqjwz.cn
http://EmwHuQDU.gqjwz.cn
http://SWz0gVW3.gqjwz.cn
http://OKt6QpFw.gqjwz.cn
http://PVOsdNLt.gqjwz.cn
http://Wf18aIvm.gqjwz.cn
http://QPiRyOLA.gqjwz.cn
http://VwcWcYwG.gqjwz.cn
http://1A0iqZCI.gqjwz.cn
http://ELI4Eo61.gqjwz.cn
http://78gPHaB6.gqjwz.cn
http://OIWIhHnM.gqjwz.cn
http://Kqdc1GLo.gqjwz.cn
http://wd7oYiu0.gqjwz.cn
http://9eas1MVH.gqjwz.cn
http://g5cO2qKl.gqjwz.cn
http://7RuH4uRk.gqjwz.cn
http://scmZUABT.gqjwz.cn
http://ZlXoJdxv.gqjwz.cn
http://tpzda2D7.gqjwz.cn
http://nvQ8BPSP.gqjwz.cn
http://wOeY8teg.gqjwz.cn
http://UwYONDfd.gqjwz.cn
http://H7SuiHU4.gqjwz.cn
http://DLIGkEms.gqjwz.cn
http://VIlrZCBM.gqjwz.cn
http://91g5b7pC.gqjwz.cn
http://UbPr92gB.gqjwz.cn
http://www.dtcms.com/a/362572.html

相关文章:

  • CICD 持续集成与持续交付
  • SGLang推理引擎--高效的开源部署方案
  • 【第四章:大模型(LLM)】09.最强开源大模型:Llama3 原理介绍与实现-(6)Llama2 Llama3代码实现
  • Wifi开发上层学习1:实现一个wifi搜索以及打开的app
  • 零依赖每月工作计划备忘录:高效管理你的每一天
  • Qt 创建的C++ 桌面程序 学习笔记1
  • Elasticsearch创建索引分片和副本大小建议
  • iOS XML 处理利器:CNXMLParser 与 CNXMLDocument 深度解析
  • iOS15如何绕过MDM锁?详细图文教程教你搞定
  • 数据结构:基数排序 (Radix Sort)
  • uni-app iOS 性能监控与调试全流程:多工具协作的实战案例
  • Qt中QSettings的键值使用QDataStream进行存储
  • 【Vue2 ✨】Vue2 入门之旅(七):事件处理
  • 从spring MVC角度理解HTTP协议及Request-Response模式
  • 自学嵌入式第三十二天:网络编程-UDP
  • 基于单片机醉酒驾驶检测系统/酒精检测/防疲劳驾驶设计
  • Angular事件处理全攻略:从基础到进阶的完整指南
  • GEO 应用实践研讨会:探索行业新路径,激发企业新活力
  • IoT Power软件 -- 每次开启强制升级解决方法
  • DVWA靶场通关笔记-DOM型XSS(Impossible级别)
  • CentOS7.6
  • 基于Force-closure评估的抓取计算流程
  • gitlab中回退代码,CI / CD 联系运维同事处理
  • RAGFlow——知识库检索系统开发实战指南(包含聊天和Agent模式)
  • 微信小程序备忘
  • ResponseBodyEmitter介绍
  • HarmonyOS 鸿蒙系统自带的 SymbolGlyph 图标组件详解
  • 【学Python自动化】 8.1 Python 与 Rust 错误处理对比学习笔记
  • 拔河(蓝桥杯)(前缀和)
  • Docker CI/CD 自动化部署配置指南