linux中ruby2.1+ redmine2.5+nginx 配置

在同一台服务器上装了redmine和gitlab 配置redmine + nginx的时候各种折腾

启动方法1:ruby script/rails server webrick -e production -d  默认的测试程序配置好了没的方法 人多了就不行了

启动方法2:ruby script/rails server mongrel -e production -d -p3000 稍微强点 不过人民大众还是说慢

逐研究NGINX方法

1:准备用mongrel + nginx的方法 没折腾成功放弃

安装nginx

我下载的版本是 nginx-0.8.40.tar.gz

解压安装

tar -zxvf nginx-0.8.40.tar.gz
cd nginx-0.8.40/
.configure
make
sudo make install
默认情况下安装目录是 /usr/local/nginx

安装mongrel和mongrel_cluster
sudo gem install mongrel mongrel_cluster
由于用gem安装后mongrel_rails命令被放在 /var/lib/gems/1.8/bin/mongrel_rails,使用不方便,所以建议建立符号链接

sudo ln -s /var/lib/gems/1.8/bin/mongrel_rails /usr/bin/mongrel_rails
部署Rails应用
我的应用示例是redmine,一个用Rails做的项目管理工具。redmine安装路径是 /opt/redmine

配置nginx,添加一个server块,用于服务redmine

编辑 vi /usr/local/nginx/conf/nginx.conf,以下是添加的内容

upstream mongrel {
  server 127.0.0.1:8000;
  server 127.0.0.1:8001;
}

# rails server
server {
  listen 80;
  server_name redmine.moon.ossxp.com;
  root /opt/redmine/public; #注意这里一定要指向Rails应用的public目录
  index index.html index.htm;

  location / {
    proxy_pass http://mongrel;
    proxy_redirect off;
    proxy_set_header Host $host;
    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
  }
}
配置mongrel_cluster

在Rails项目的根目录下执行以下命令,生成config/mongrel_cluster.yml 文件,供启用mongrel集群使用

sudo mongrel_rails cluster::configure -e production -p 8000 -a 127.0.0.1 -N 2
有关cluster::configure 更多参数使用可借助帮助命令查看

mongrel_rails cluster::configure -h
生成的文件内容如下:

---
address: 127.0.0.1
log_file: log/mongrel.log
port: "8000"
environment: production
pid_file: tmp/pids/mongrel.pid
servers: 2
启用mongrel_cluster

wangsheng@pc01:/opt/redmine$ sudo mongrel_rails cluster::start
starting port 8000
starting port 8001
启用nginx

sudo /usr/local/nginx/sbin/nginx

测试是否部署成功

在浏览器输入server_name,(我这里用的是redmine.moon.ossxp.com),按回车键,如果显示redmine主页,则证明部署成功

出现的错误:em_plugin.rb:109:in `load': uninitialized constant Gem::SourceIndex (NameError)

2:用unicorn + nginx

参考:http://blog.davidanguita.name/2013/03/03/setting-up-a-cheap-redmine-server-using-unicorn-and-apache/ 或者类似和国内BLOG 启动的时候失败

命令: unicorn_rails -c shared/config/redmine/unicorn.rb -p 5000 -E production -D

出现的错误:runtime.rb:34:in `block in setup': You have already activated rack 1.5.2, but your Gemfile requires rack 1.4.5. Prepending `bundle exec` to your command may solve this. (Gem::LoadError)

也是各种搜索 没解决,因为GITLAB和这个在同一台服务器  有几篇文章让卸载1.5.2的没敢动 搜索到下面这篇折腾了下成功了

参考:http://qiita.com/issobero/items/4ca5bb5f8508c25c8d45

使用命令:bundle exec unicorn_rails -E production -c config/unicorn.rb -D

不懂RUBY就仅仅记录了 方便遇到问题的同学参考。

ps 到了这里配置就介绍完了,文章有两个国外地址小编就整理过来,大家可以进入到地址去看看。

时间: 2024-10-24 14:03:15

linux中ruby2.1+ redmine2.5+nginx 配置的相关文章

linux中sudo的用法和sudoers配置详解

sudo 是linux下常用的允许普通用户使用超级用户权限的工具,允许系统管理员让普通用户执行一些或者全部的root命令,如halt,reboot,su等等.这样不仅减少了root用户的登陆和管理时间,同样也提高了安全性.Sudo不是对shell的一个代替,它是面向每个命令的.它的特性主要有这样几点: 1.sudo能够限制用户只在某台主机上运行某些命令. 2.sudo提供了丰富的日志,详细地记录了每个用户干了什么.它能够将日志传到中心主机或者日志服务器. 3.sudo使用时间戳文件来执行类似的"

Linux中NFS服务器的安装与配置

NFS是Net http://www.aliyun.com/zixun/aggregation/19352.html">File System的简写,即网络文件系统. 网络文件系统是FreeBSD支持的文件系统中的一种,也被称为NFS. NFS允许一个系统在网络上与它人共享目录和文件.通过使用NFS,用户和程序可以象访问本地文件一样访问远端系统上的文件. 以下是NFS最显而易见的好处: 1.本地工作站使用更少的磁盘空间,因为通常的数据可以存放在一台机器上而且可以通过网络访问到. 2.用户不

linux中vsftpd下虚拟用户+被动模式配置详解

下面说说在linux下部署vsftp的过程吧,小小笔记. 一.安装 这里我说下最简单的rpm包安装,因为光盘中有,何必编译呢? yum install db4* vsftpd -y 二.配置 1.新建系统用户 useradd vsftpd -s /sbin/nologin 限制vsftpd用户登录,此用户将最为vsftpd服务的宿主用户 useradd ftp -s /sbin/nologin 这里是Vsftpd虚拟宿主用户,默认情况下这个用户应该有. 当然这些用户你可以用另外的名字. 2.修改

linux中RSYNC进行网站增量备份配置

利用Linux的Rsync可以非常简单的对VPS进行增量备份操作,今天我就给大家写一个教程供大家使用. 首先需要下载两个压缩包,一个为服务器端,一个为客户端,服务器端为数据源VPS,客户端为备份VPS,注意:仅支持单向同步,即备份功能. 一.配置服务器端,例如IP:111.111.111.111 下载 rsync-server.zip 文件,解压后,上传到/etc目录,需要设置4个地方: 1.设置 /etc/rsyncd/rsyncd.conf 中的服务器端IP为您VPS的IP  代码如下 复制

Linux中e-mail服务器的安装与配置

随着互联网的发展,e-mail迅速成长成为主要的网络http://www.aliyun.com/zixun/aggregation/38653.html">信息传递工具.面对大量要求能够快速,廉价,和高可信赖的e-mail需求,很多公司和个人都把linux提供的服务作为满足这些需求的解决方案. redhat7.1默认安装的时间已经安装了SendMail 8.11服务.因为redhat安装使用都非常的简单,我们这里就忽略安装过程,相关资料请查阅redhat CD里的文档.要使你的新e-mai

linux中mrtg监控juniper防火墙流量配置

 一.juniper开启SNMP 这里开启SNMP的步骤和昨天提到配置方法一样,这里略过. 二.安装配置mrtg 1.安装 mrtg的官方页面为http://oss.oetiker.ch/mrtg/ ,最新版本是2.17.4 .可以选择使用源码包编译安装,也可以选择系统源安装 .  代码如下 复制代码 #yum -y install mrtg mrtg-libs 需要注意的是mrtg也有windows版的,由于个人习惯了使用linux这里仍以centos/redhat为例. 2.cfgmaker

linux中编译安装Varnish3.03及配置

这是关于Varnish3.03编译安装配置的笔记 安装  代码如下 复制代码 yum -y install gcc gcc-c++ file bison patch unzip mlocate flex wget diffutils automake autoconf kernel-devel gd cpp readline-devel openssl openssl-devel vim-minimal nano libjpeg libjpeg       -devel libpng libpn

linux中文件服务及vsftpd的配置

文件服务:     ftp:应用层,C/S,文件共享:file transfer protocol:     nfs,cifs:文件系统接口,网络文件系统:         nfs:network file system cifs:common internet file system     samba 网络存储:     NAS:Network Attached Storage,文件服务器,nfs或cifs,文件级别:     SAN:Storage Area Network,块级别共享服务

Linux中WU-FTP服务器的安装与配置

&http://www.aliyun.com/zixun/aggregation/37954.html">nbsp;   在众多的网络应用中,FTP(File Transfer porotocol)有着非常重要的地位.在Internet中一个十分重要的资源就是软件资源.而各种各样的软件资源大多数都是放在FTP服务器中的.可以说,FTP与WEB服务几乎占据了整个Internet应用的80%以上. FTP服务可以根据服务对象的不同分为两类:一类是系统FTP服务器,它只允许系统上的合法用