redmine5.0.2

部署环境准备

Rocky linux 8.4
redmine5.0.2
Ruby version:3.0.2
mysql version: 10.3.32
rails version:6.1

一、更新操作系统

更新系统
dnf update -y
安装epel源
dnf install epel-release -y

二、安装数据库MariaDB

dnf install mariadb-server -y
启动数据库
systemctl start mariadb
systemctl enable mariadb
配置数据库(默认密码为空)
mysql -u root -p
设置密码:
ALTER USER ‘root’@‘localhost’ IDENTIFIED BY ‘123456’;

创建redmine数据库,第二句里123456替换成自己的数据库密码

CREATE DATABASE redmine CHARACTER SET utf8mb4;
CREATE USER ‘redmine’@‘localhost’ IDENTIFIED BY ‘123456’;
GRANT ALL PRIVILEGES ON redmine.* TO ‘redmine’@‘localhost’;
flush privileges;
show databases;

三、安装依赖及Ruby及rails

安装Development Tools工具包(会一次性安装很多常用的开发包,包括gcc,g++等编译文件必须的工具)
dnf groupinstall “Development Tools” -y
安装指定ruby版本
dnf module enable ruby:3.0 -y
dnf install ruby -y
dnf install ruby-devel -y
检查版本
ruby -v
安装rails
gem install rails -v 6.1
rails -v
yum install mysql-devel
安装git
dnf install git -y

四、下载redmine及配置服务

cd /opt && git clone https://gitee.com/tigergm/redmine.git
cd redmine
cp config/database.yml.example config/database.yml
修改配置
vi config/database.yml
PS:这里面主要修改的是数据库的名称,要和第二部创建的库名称一样,另外就是密码,如果有密码需要把密码加上,无则不需要改动
安装项目依赖的所有gem包
注:此命令会尝试更新系统中已存在的gem包
bundle install
这一步会生成一个随机密钥,Rails 使用该密钥对存储会话数据的 cookie 进行编码,从而防止它们被篡改。
rake generate_secret_token
创建数据库结构
rake db:migrate
在数据库中插入默认配置数据
rake redmine:load_default_data
启动redmine
nohup rails s -b 0.0.0.0 -p 3000 >nohup.out 2>&1 &
浏览器访问http://ip:3000

补充:

Bundle介绍:

Rails 3中引入Bundle来管理项目中所有gem依赖,该命令只能在一个含有Gemfile的目录下执行,如rails 3项目的根目录。

关于Gemfile和Gemfile.lock

所有Ruby项目的信赖包都在Gemfile中进行配置,不再像以往那样,通过require来查找。Rails 3中如果需要require某个gem包,必须通过修改Gemfile文件来管理。

Gemfile.lock则用来记录本机目前所有依赖的Ruby Gems及其版本。所以强烈建议将该文件放入版本控制器,从而保证大家基于同一环境下工作。

Bundle命令详解:

显示所有的依赖包
$ bundle show

显示指定gem包的安装位置
$ bundle show [gemname]

检查系统中缺少那些项目以来的gem包
注:如果系统中存在所有项目以来的包,则会输出:The Gemfile’s dependencies are satisfied
$ bundle check

安装项目依赖的所有gem包
注:此命令会尝试更新系统中已存在的gem包
$ bundle install

安装指定的gem包
$ bundle install [gemname]

更新系统中存在的项目依赖包,并同时更新项目Gemfile.lock文件
$ bundle update

更新系统中指定的gem包信息,并同时更新项目Gemfile.lock中指定的包信息
$ bundle update [gemname]

向项目中添加新的gem包引用
$ gem [gemname], [ver]

你还可以指定包依赖关系
$ gem [gemname], :require => [dependence_gemname]

你甚至还可以指定gem包的git源
$ gem [gemname], :git => [git_source_url]

锁定当前环境
可以使用bundle lock来锁定当前环境,这样便不能通过bundle update来更新依赖包的版本,保证了统一的环境
$ bundle lock

解除锁定
$ bundle unlock

打包当装环境
bundle package会把当前所有信赖的包都放到 ./vendor/cache/ 目录下,发布时可用来保证包版本的一致性。
$ bundle package

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值