目录
4.1 要将redmine源码中 config/database.yml.example复制一份改名为config/database.yml
4.3 跳过mysql的 密码skip-grant-tables(跳过权限验证)
9.3 修改Apache监听的host 和redmine的配置
10. 最后测试Apache的广播地址是否可以访问redmine
12. 查看 redmine log 和Apache log
1.安装必要的插件:
sudo apt-get install mysql-server mysql-client ruby rubygems ruby-dev libmysqlclient-dev imagemagick libmagickwand-dev ruby-actionpack apache2 libtool libapache2-mod-passenger
2.clone下载 redmine
git clone https://github.com/redmine/redmine
3.配置redmine数据库和用户:
sudo mysql -u root -p
CREATE DATABASE redmine CHARACTER SET utf8;
CREATE USER 'redmine'@'localhost' IDENTIFIED BY 'my_password';
GRANT ALL PRIVILEGES ON redmine.* TO 'redmine'@'localhost';
4.配置数据库连接
4.1 要将redmine源码中 config/database.yml.example复制一份改名为config/database.yml
cp config/database.yml.example config/database.yml
4.2 修改datebase.yml
production:
adapter: mysql
database: redmine
host: localhost
username: redmine
password: "my password"
encoding: utf8
4.3 跳过mysql的 密码skip-grant-tables(跳过权限验证)
sudo vim mysql.conf.d/mysqld.cnf
#添加下面一句话
skip-grant-tables
5.安装ruby和gem,和redmine 的插件
cd redmine
#原来的gem的源太慢使用中国的gem的源
gem sources --remove https://rubygems.org/
gem sources -a https://gems.ruby-china.com/
sudo gem install bundler -V
bundle install --without development test
6.redmine 配置
sudo rake generate_secret_token
sudo RAILS_ENV=production rake db:migrate
sudo RAILS_ENV=production rake redmine:load_default_data
7.设置tmp文件的权限
mkdir -p tmp tmp/pdf public/plugin_assets
sudo chmod -R 755 files log tmp public/plugin_assets
8.运行redmine的客户端 测试
sudo ruby script/rails server webrick -e production
访问:
https://0.0.0.0:3000
账号:admin ;秘密:admin;
9 配置Apache连接redmine
gem install passenger
passenger-install-apache2-module
9.1添加redmine的文件位置:
sudo vim /etc/apache2/apache2.conf
PassengerAppRoot /public/redmine/
9.2 为redmine建立软连接 访问的
#我的redmine 的路径是/public/redmine
sudo ln -d /public/redmine/public/ /var/www/html/redmine
9.3 修改Apache监听的host 和redmine的配置
sudo vim /etc/apache2/sites-available/000-default.conf
添加如下内容:
<Directory /public/redmine/public>
AllowOverride all
Options -MultiViews
</Directory>
<Directory /var/www/html/redmine>
RailsBaseURI /redmine
PassengerResolveSymlinksInDocumentRoot on
</Directory>
9.4修改监听的host:
<VirtualHost *:80> 改为<VirtualHost *:3000>
整体的文件如下:
9.4重启Apache服务
sudo service apache2 restart
10. 最后测试Apache的广播地址是否可以访问redmine
服务器的ip
https:/ip:3000
11.配置过程中遇到的问题
redmine ActionController::RoutingError (No route matches [GET] “/redmine“):
Started GET "/redmine" for 192.168.40.48 at 2020-07-31 17:43:54 +0800
ActionController::RoutingError (No route matches [GET] "/redmine"):
actionpack (5.2.4.2) lib/action_dispatch/middleware/debug_exceptions.rb:65:in `call'
actionpack (5.2.4.2) lib/action_dispatch/middleware/show_exceptions.rb:33:in `call'
railties (5.2.4.2) lib/rails/rack/logger.rb:38:in `call_app'
railties (5.2.4.2) lib/rails/rack/logger.rb:26:in `block in call'
activesupport (5.2.4.2) lib/active_support/tagged_logging.rb:71:in `block in tagged'
activesupport (5.2.4.2) lib/active_support/tagged_logging.rb:28:in `tagged'
activesupport (5.2.4.2) lib/active_support/tagged_logging.rb:71:in `tagged'
railties (5.2.4.2) lib/rails/rack/logger.rb:26:in `call'
actionpack (5.2.4.2) lib/action_dispatch/middleware/remote_ip.rb:81:in `call'
actionpack (5.2.4.2) lib/action_dispatch/middleware/request_id.rb:27:in `call'
rack (2.2.3) lib/rack/method_override.rb:24:in `call'
rack (2.2.3) lib/rack/runtime.rb:22:in `call'
activesupport (5.2.4.2) lib/active_support/cache/strategy/local_cache_middleware.rb:29:in `call'
pack (5.2.4.2) lib/action_dispatch/middleware/executor.rb:14:in `call'
actionpack (5.2.4.2) lib/action_dispatch/middleware/static.rb:127:in `call'
rack (2.2.3) lib/rack/sendfile.rb:110:in `call'
rack (2.2.3) lib/rack/content_length.rb:17:in `call'
railties (5.2.4.2) lib/rails/engine.rb:524:in `call'
解决方法参考另一一篇文章:
https://blog.csdn.net/yang_quan_yang/article/details/107719195
12. 查看 redmine log 和Apache log
tail -f /var/log/apache2/error.log
#redmine 的clone 下载的位置
tail -f remine/log/production.log
13.企业邮箱配置
参考如下的博文
https://blog.csdn.net/yang_quan_yang/article/details/107780683
14.开机自启的脚本
再如下目录下创建redmine的脚本:
cd /etc/init.d/
vim redmine
#!/bin/bash
#redmine Startup script for the redmine server
#chkconfig: - 85 15
Prog=redmine
Prog_dir=/data/redmine
#find the redmine's pid
Pid=`ps aux | grep "\<$Prog\>" | pidof ruby`
ProgPort=3000
ReturnCode=`ss -tlnp | grep "\<$ProgPort\>" &> /dev/null;echo $?`
start() {
if [ $ReturnCode -eq 0 ] &> /dev/null;then
echo " Redmine is Already Running !!! "
else
cd $Prog_dir
ruby /public/redmine/bin/rails server webrick -e production -d &> /dev/null #填好你的redmine 源文件的路径哦
echo -e "Starting redmine ..... \e[32m[ OK ]\e[m"
fi
}
stop() {
if [ $ReturnCode -ne 0 ] &> /dev/null;then
echo " Redmine is Already Stopped !!!"
else
kill -9 $Pid
echo -e "Stopping redmine ..... \e[32m[ OK ]\e[m"
fi
}
status() {
if [ $ReturnCode -eq 0 ] &> /dev/null;then
echo " Redmine is Running !!! "
else
echo " Redmine is Stopped !!! "
fi
}
case "$1" in
start)
start
;;
stop)
stop
;;
status)
status
;;
restart)
stop
start
;;
*)
echo "Usage: $Prog {start|stop|status|restart}"
esac
exit 0
开机后可以启动redmine 的服务了:
sudo service redmine restart
sudo service redmine stop