第一步:安装redmine
安装下载:https://gitee.com/tigergm/redmine/tree/adminlte-5.0-stable/
选择:5.0-stable 版本
git clone https://gitee.com/tigergm/redmine.git
tar -zxvf redmine-xxx,tar.gz #解压
第二步:安装ruby
sudo apt-get install ruby rubygems libmysqlclient-dev imagemagick libmagickwand-dev
第三步:更改默认的gem源
gem sources #查看当前使用的gem源
gem sources --remove https://rubygems.org/
gem sources --add https://gems.ruby-china.com/ #更换国内的gem源
gem sources -l #检测方法是否成功
em sources -u #更改缓存
注意:
如果更改完成安装 bundle install仍然很慢可以使用以下方法:
找到 Gemfile文件打开,修改source 为https://gems.ruby-china.com/
vim sudo /root/redmine-trip/redmine/Gemfile
第四步:配置数据库
- 创建数据库
create database redmine character set utf8mb4;
create use 'redmine'@'localhost' identified by 'my_passwoed';
grant all privileges on redmine.* to 'redmine'@'localhost'
- 配置数据库信息
cp config/database.yml.example config/database.yml
sudo vim config/database.yml
第五步:进入redmine的目录,安装依赖项
sudo gem install bundler
sudo bundle install
报错
Gem::Ext::BuildError: ERROR: Failed to build gem native extension.
错误是因为缺少Ruby的开发环境头文件,需要安装ruby-dev
来解决
sudo apt-get install ruby-dev
第六步:创建token
sudo bundle exec rake generate_secret_token
第七步:数据库迁移
sudo RAILS_ENV=production bundle exec rake db:migrate
报错
rake aborted!
LoadError: cannot load such file -- listen
错误表明您的项目需要 listen 这个 Ruby gem,但是它当前没有被安装。
解决方法
打开 vim Gemfile
添加gem 'listen'
,然后运行以下命令:
bundle install
第八步:初始化数据表配置,配置中文zh:
rake redmine:load_default_data
第八步:启动
bundle exec rails server -e production -b 172.27.6.143 -p 8000
rails s -b 172.27.6.143 -p 8000
截止当前我们可以启动redmine项目管理软件,为了能够在外部也可以进行访问需要将其部署到公网上面,以下为操作步骤
步骤一:安装Apache, Passenger
sudo apt-get install apache2 libapache2-mod-passenger
步骤二:配置Apache及Passenger
- Passenger配置
sudo vi /etc/apache2/mods-available/passenger.conf
添加PassengerDefaultUser www-data
,然后保存。
2. Apach2r配置
在vim /etc/apache2/sites-available
下创建redmine.conf
文件,然后打开sudo vim /etc/apache2/sites-available
<VirtualHost *:9000>
ServerName 公网ip或者域名
# ServerAlias www.example.com
DocumentRoot /root/redmine-trip/redmine/public
<Directory /root/redmine-trip/redmine/public>
AllowOverride None
Require all granted
RailsBaseURI /redmine
</Directory>
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>
- 更换服务器端口
sudo vim /etc/apache2/ports.conf
Listen 9000 通过Listen 的值可以更换服务器的端口
<IfModule ssl_module>
Listen 443
</IfModule>
<IfModule mod_gnutls.c>
Listen 443
</IfModule>
- 设置相关权限
sudo touch /root/redmine-trip/redmine/Gemfile.lock
sudo chown www-data:www-data /root/redmine-trip/redmine/Gemfile.lock
注意问题一:
如果防火墙是开启的,首先需要在ecs服务器上开通端口
sudo service firewall status #查看防火墙的状态
如果防火墙是打开的,则需要将你更换的端口在防火墙上添加,允许端口流量通过
sudo firewall-cmd --zone=public --add-port=端口号/协议 --permanent #添加端口号
sudo firewall-cmd --zone=public --reload #重新加载防火墙
netstat -tuln #查看端口监听
netstat -tuln | grep 端口号 #查看端口进程
注意问题二:
报错:Permission denied
Apache服务器在访问文件系统路径/root/redmine-trip时遇到了权限问题,该路径的某个组成部分缺少搜索权限,执行以下命令
sudo chmod +x /root /root/redmine-trip
步骤二:启动
sudo service apache2 reload
sudo service apache2 start