Архив рубрики: gems

gemset

link

Выбираем версию ruby

$ rvm use 2.2.0

Создаем гемсет

$ rvm gemset create my_app

переключаемся на новый гемсет

$ rvm gemset use my_app

Устанавливаем rails

$ gem install rails --no-ri --no-rdoc

Создаем новое приложение

$ rails new my_app -d postgresql

Переходим в каталог нового приложения

$ cd my_app

Закрепляем версию руби и гемсет за данным каталогом, т.е. проектом

$ rvm --ruby-version use rvm current@my_app

сохраняем исходный конфиг database.yml и редактируем database.yml

$ cp config/database.yml config/database.yml.sample

Создаем базы

$ rake db:create:all

Ну и git

git init
echo config/database.yml >> .gitignore
git add .
git ci -am "initial commit"

UPD: Скрипт я все таки сделал, но он дико заточен под меня, без параметров. Всегда создается проект с базой данных postgres и иницируется git, а также все проекты у меня лежат в каталоге ~/projects.

Сам скрипт:

#!/bin/bash

read -n 1 -p "Ты запустил скрипт с параметрами - x.x.x my_super_app (y/[a])?: " AMSURE
[ "$AMSURE" = "y" ] || exit
echo "" 1>&2

cd ~/projects

rubyVersion=$1
appName=$2
echo -e "\x1B[33m### Try ruby version: $rubyVersion ###\x1B[39m"
echo -e "\x1B[33m### Try application name: $appName ###\x1B[39m"

if which rvm 1>/dev/null; then
  echo -e "\x1B[32m### Using RVM ###\x1B[39m"
else
  echo -e "\x1B[31m### RVM not instaled ###\x1B[39m"
  exit
fi

rvm use $rubyVersion
rvm gemset create $appName
rvm gemset use $appName
gem install rails --no-ri --no-rdoc
echo -e "\x1B[32m### Rails done! ###\x1B[39m"
rails new $appName -d postgresql
cd $appName
rvm --ruby-version use rvm current@$appName
cp config/database.yml config/database.yml.sample

#git
git init
echo config/database.yml >> .gitignore
git add .
git ci -am "Initial commit for $appName"
echo -e "\x1B[32m### All done! ###\x1B[39m"
echo -e "\x1B[33m### Do not forget edit database.yml and create DBs with 'rak

apache passenger

First install packages:

- for Ubuntu:

sudo apt-get install libcurl4-gnutls-dev
sudo apt-get install apache2-dev

- for CentOS (good tutorial):

yum install curl-devel httpd-devel 

or

yum install curl-devel apache2-devel 

After install gem:

gem install passenger

And then successfully configurate it:

sudo passenger-install-apache2-module

 

nginx

vim /opt/nginx/conf/nginx.conf
worker_processes 1;

events { 
worker_connections 1024; 
}

http { 
passenger_root /usr/local/rvm/gems/ree-1.8.7-2012.02/gems/passenger-4.0.14; 
passenger_ruby /usr/local/rvm/wrappers/ree-1.8.7-2012.02/ruby;

client_max_body_size 100m; 
server_names_hash_bucket_size 64;

include mime.types; 
default_type application/octet-stream;

sendfile          on;
keepalive_timeout 65;
server {
listen 80; server_name localhost _ tgym.ru www.tgym.ru;
root /var/www/tgym/public; 
passenger_enabled on; 
}

}

passenger and swap

https://rubygems.org/gems/passenger/versions
 gem install passenger --version 4.0.16
or
gem 'passenger', '~> 4.0.16'
yum install curl-devel
passenger-install-nginx-module

passenger like this:

dd if=/dev/zero of=/swap bs=1M count=1024
mkswap /swap
swapon /swap

 

/opt/nginx/conf/nginx.conf

http {

passenger_root /usr/local/rvm/gems/ree-1.8.7-2012.02/gems/passenger-4.0.16;
passenger_ruby /usr/local/rvm/wrappers/ree-1.8.7-2012.02/ruby;

}

server {
listen 80;
server_name www.yourhost.com;
root /somewhere/public; # <— be sure to point to ‘public’!
passenger_enabled on;
}

folder:

/usr/local/rvm/gems/ree-1.8.7-2012.02/gems/passenger-4.0.16/doc/Users guide Nginx.html