如何在Ubuntu 15.10上安装Redmine 3和Nginx

如何在Ubuntu 15.10上使用Nginx安装Redmine 3

Redmine是基于Ruby on Rails框架的开源项目管理和问题跟踪工具。 它是基于Web的,所以您可以从任何提供Web浏览器的客户端平台使用它。 它非常适合多语言团队,因为它包含42种语言的翻译。 您可以在一个安装中跟踪多个项目,它具有对新闻,文档管理,文件管理,支持wiki的综合支持。 您可以通过LDAP身份验证和REST API将其与其他应用程序进行连接。

本教程涵盖了Redmine 3安装,Nginx作为Web服务器,MySQL作为Ubuntu 15.10(64位)操作系统上的数据库。

先决条件

  • Ubuntu 15.10 - 64位。
  • 根权限

第1步 - 安装依赖关系

Redmine有很多依赖,但是我们可以轻松地安装它们。 第一步是成为root用户,然后更新您的Ubuntu存储库。 本教程中的所有进一步步骤都以root用户身份执行,这就是为什么我使用“sudo su”而不是每个命令的前缀。

sudo su
apt-get update

使用apt命令安装Redmine的依赖关系:

apt-get install mysql-server mysql-client libmysqlclient-dev imagemagick libmagickwand-dev libcurl4-openssl-dev git-core subversion

安装程序将要求一个新的MySQl根密码,在那里输入一个新的和安全的MySQL密码。

第2步 - 安装Ruby和RVM

在这一步中,我们将安装最新的RVM版本和Ruby 2.0。 Redmine 3.2稳定支持Ruby版本2.0,所以我们可以在这里使用。 RMV(Ruby Version Manager)是一个方便的命令行工具,可让您安装,管理和使用多个Ruby环境。

gpg --keyserver hkp://keys.gnupg.net --recv-keys D39DC0E3
curl -L https://get.rvm.io | bash -s stable --ruby=2.0.0

现在我们必须重新加载RVM并将其添加到.bashrc中进行自动重新加载:

source /usr/local/rvm/scripts/rvm
echo '[[ -s "/usr/local/rvm/scripts/rvm" ]] && source "/usr/local/rvm/scripts/rvm"' >> ~/.bashrc

第3步 - 配置用于Redmine的MySQL数据库

我们将为Redmine安装创建一个数据库和数据库用户。 使用root用户和密码登录到MySQL shell:

mysql -u root -p
TYPE YOUR PASSWORD

接下来,创建一个名为“redmine”的新数据库和名称为“redmine”的新用户,密码为“redmine”(在安装时使用更好的密码,这只是一个例子),然后授予用户的权限'redmine'到'redmine'数据库。

create database redmine;
create user redmine@localhost identified by 'redmine';
grant all privileges on redmine.* to redmine@localhost identified by 'redmine';
flush privileges;
q\

创建数据库和用户。

第4步 - 安装PhusionPassenger和Nginx

Phusion Passenger是可以与Apache和Nginx Web服务器集成的Web和应用服务器。 它支持多种语言:Ruby,Python和Nodejs。 它很容易使用和快速。

在这部分中,我们将安装Phusion Passenger并将其与Nginx集成。 Redmine将在Nginx网络服务器下运行。 使用gem命令安装Passenger,然后安装passenger-nginx模块。

gem install passenger --no-ri --no-rdoc
passenger-install-nginx-module

该命令将询问您将支持的语言,请在此处选择RubyPython

将会询问有关Nginx的安装,选择“ 是:下载,为我编译并安装Nginx(推荐) ”。

最后,将询问有关Nginx安装目录,使用默认' / opt / nginx /',然后按“ Enter ”。

第5步 - 配置Nginx

转到安装目录并使用编辑器编辑nginx.conf文件,我将在这里使用vim编辑器。

cd /opt/nginx/conf/
vim nginx.conf

在服务器指令中,将服务器名称更改为所需的域名,然后添加根目录:

server {
  .......
  listen  80;
  server_name www.redmine.me;
  root /var/www/redmine/public;
  passenger_enabled on;
  client_max_body_size      10m; # Max attachemnt size
  ........
}

评论以下行:

#location / {
#    root   html;
#    index  index.html index.htm;
#}

保存文件并退出。

接下来我们将为systemd配置Nginx。 转到systemd目录并创建新的服务文件'nginx.service'。

cd /lib/systemd/system/
vim nginx.service

粘贴Nginx脚本为systemd下面:

[Unit]
Description=The NGINX HTTP and reverse proxy server
After=syslog.target network.target remote-fs.target nss-lookup.target

[Service]
Type=forking
PIDFile=/opt/nginx/logs/nginx.pid
ExecStartPre=/opt/nginx/sbin/nginx -t
ExecStart=/opt/nginx/sbin/nginx
ExecReload=/bin/kill -s HUP $MAINPID
ExecStop=/bin/kill -s QUIT $MAINPID
PrivateTmp=true

[Install]
WantedBy=multi-user.target

保存文件并退出。

重新加载systemd服务,并尝试使用systemctl命令启动Nginx:

systemctl daemon-reload
systemctl start nginx

如果要检查Nginx,请使用netstat检查打开的端口80:

netstat -plntu | grep nginx

tcp        0      0 0.0.0.0:80              0.0.0.0:*               LISTEN      4871/nginx

第6步 - 安装Redmine

为Redmine安装新的目录,我将在这里使用目录'/ var / www /'。

mkdir -p /var/www/

转到'/ var / www /'目录,并使用svn命令下载redmine:

cd /var/www/
svn co https://svn.redmine.org/redmine/branches/3.2-stable redmine

输入redmine目录并复制配置文件和数据库配置文件:

cd redmine
cp config/configuration.yml.example config/configuration.yml
cp config/database.yml.example config/database.yml

然后用vim编辑database.yml文件:

vim config/database.yml

在生产线上填写数据库,数据库用户和密码的详细信息。 使用您在第3章中创建的数据库详细信息。

production:
  adapter: mysql2
  database: redmine
  host: localhost
  username: redmine
  password: "redmine"
  encoding: utf8

保存文件并退出编辑器。

在redmine目录中,创建一个新目录并将所有者更改为www-data:

mkdir -p tmp tmp/pdf public/plugin_assets
sudo chown -R www-data:www-data files log tmp public/plugin_assets
sudo chmod -R 775 files log tmp public/plugin_assets

然后为Redmine安装bundler和gem依赖项:

gem install bundler
bundle install --without development test

现在生成秘密令牌,然后生成数据库:

bundle exec rake generate_secret_token
RAILS_ENV=production bundle exec rake db:migrate
RAILS_ENV=production bundle exec rake redmine:load_default_data

重新启动Nginx并使用Web浏览器访问redmine域:

systemctl restart nginx

参考redmine安装,在我的情况下:www.redmine.me

登录管理页面:www.redmine.me/login

默认用户和密码为“admin”。

创建新的示例项目。

示例项目页面。

Redmine与Nginx和MySQL的安装已经成功完成。

结论

Redmine是一个基于Web的项目管理和问题跟踪应用程序。 Redmine是一个跨平台的应用程序,所以我们可以在Windows,Linux或Mac OS上运行它。 它支持许多不同的数据库,如MySQL,PostgreSQL,Microsoft SQL Server和SQLite。 Redmine易于安装和配置,我们可以使用Apache或Nginx作为Web服务器。 Redmine非常强大,具有多语言支持,文件管理,Wiki,REST API等许多功能。Redmine是通过问题跟踪构建自己的项目管理的最佳OpenSource解决方案之一。

赞(52) 打赏
未经允许不得转载:优客志 » 系统运维
分享到:

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏