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

从零开始部署经典开源项目管理系统最新版redmine6-Linux Debian12

安装Debian 12

前面为了在windows上好开发,想要在windows上配置开发环境,以源码方式在本地部署运行,但经过好几天各种版本切换及配置组件库等各种操作后,证明windows上搭建redmine6支持的运行环境没有那么简单,后续有时间再更一篇windows踩坑记。一句话总结就是windows真的没有想象的简单,建议放弃。
后来尝试用Linux系统,但过于天真试了centos7和redhat7.9也是遇到一些编译库(主要是gcc系列的库)的编译兼容性问题,不想再折腾了,遂换了新版Debian12,总体过程较为顺利,记录如下。

下载redmine-6.0.6

可去官网直接下载源码包redmine-6.0.6,放到指定文件夹中。当然也可通过wget进行下载。下载后在指定目录进行解压:

cd /path/to/downloaded/filesudo tar -xzvf redmine-6.0.6.tar.gz -C /path/to/target/directory

安装Ruby3

个人在安装的时候选择的是Ruby3.2.5版本,redmine官方对于Ruby的版本要求为ruby ‘>= 3.2.0’, ‘< 3.5.0’,理论上符合都没问题。

在Linux上安装我选择的方式是使用rvm进行安装,验证过还是很方便的,且后续可进行版本的切换,因为rvm本身就是ruby的版本管理工具(ruby version manager)。

在安装rvm之前需要先安装一些包依赖:

sudo apt update
sudo apt install -y curl gpg gnupg2 autoconf bison libssl-dev libreadline-dev zlib1g-dev libyaml-dev libsqlite3-dev

开始安装rvm:

\curl -sSL https://get.rvm.io | bash -s stablesource ~/.rvm/scripts/rvm

直接安装ruby:

rvm install 3.2.5

可查看当前ruby版本并设置默认使用版本:

ruby -v
rvm use 3.2.5 --default

安装及配置MySQL8

使用命令安装mysql数据库,由于直接使用apt安装失败了,我是采取的手动安装的方式,先到mysql官网下载debian对应安装索引文件mysql debian version,然后再通过命令进行安装。

sudo dpkg -i mysql-apt-config_0.8.17-1_all.debsudo apt updatesudo apt install mysql-server -ysudo systemctl status mysql

安装过程中在终端中会出现图形化选择页面,选择过程中可能会进入类似死循环的过程,注意选项配合,只要装了server就行了。

初始化用户和数据库

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

安装项目依赖

切换到项目目录下安装依赖包,可以不加依赖包参数这样可以把开发 测试 生产环境下的包都装上,因为装的过程比较慢,容易误解为卡死,可加上- -verbose参数用于查看实时状态。

cd /path/to/redmine
bundle install --without development test

安装过程中可能会有个别库报错,使用gem单独安装即可,如:

gem install mysql2 --verbose

更改项目数据库的配置文件

切换到项目目录下的config文件,拷贝数据库配置示例文件,更改实际配置

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

创建和迁移已有数据库

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

可选择加载默认数据

RAILS_ENV=production bundle exec rake redmine:load_default_data

创建过程可能会有credentials类的报错,重新通过命令获取认证信息就能过

bin/rails credentials:edit --environment production

启动服务

bundle exec rails server -e production

项目启动默认端口为3000,故访问http://localhost:3000或http://127.0.0.1:3000均可直达页面,同一局域网设备在无路由限制和防火墙策略的情况下也可通过服务主机的IP加端口进行访问(需配置启动命令-b 0.0.0.0),如下:
在这里插入图片描述
启动过程中还报了一个puma服务找不到,经过检查是puma的依赖在配置文件中只在生产环境下存在,bundle install的时候把- -without development test去掉重新跑一遍就好了。

http://www.dtcms.com/a/337158.html

相关文章:

  • 链路聚合路由器OpenMPTCProuter源码编译与运行
  • 如何在 Ubuntu 24.04 安装 Python 3.12 ?
  • SpringAI集成MCP
  • 详细探讨AI在金融、医疗、教育和制造业四大领域的具体落地案例,并通过代码、流程图、Prompt示例和图表等方式展示这些应用的实际效果。
  • 【金融数据分析】用Python对金融产品价格进行时间序列分解
  • MySQL的锁:
  • Python入门第9课:面向对象编程(OOP)从零开始,类、对象与三大特性
  • Leetcode 3650. Minimum Cost Path with Edge Reversals
  • Vue Router的常用API有哪些?
  • 05 定时器,延时器、递归、内置对象(Object 对象+Math 对象+Date 对象+String对象)
  • Less (CSS 预处理器)
  • 8.18网络编程——基于UDP的TFTP文件传输客户端
  • 后端通用基础代码
  • 电源电路介绍
  • OpenTelemetry、Jaeger 与 Zipkin:分布式链路追踪方案对比与实践
  • 窗口看门狗(WWDG)
  • 网络基础——协议认识
  • Linux权限的学习
  • 抽象类与接口的区别
  • 【C语言篇】操作符详解
  • Ubuntu下无法在huggingface下载指定模型的解决方法
  • Read Frog:一款开源AI浏览器语言学习扩展
  • 如何解决IDEA/Datagrip无法连接数据库的问题:解决方法为添加参数-Djava.net.preferIPv4Stack=true
  • Java原子类详解
  • 并发编程原理与实战(二十四)Java并发基石LockSupport park/unpark机制全解析
  • 车e估牵头正式启动乘用车金融价值评估师编制
  • AI出题人给出的Java后端面经(十八)(日更)
  • Java基础八股复习3 jvm-内存结构
  • 数据仓库理论
  • 具身智能2硬件架构(人形机器人)摘自Openloong社区