export TEMP=/home/tmp/ export PASSENGER_TMPDIR=/home/tmp/
Архив рубрики: gems
gemset
Выбираем версию 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
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
gem install passenger --version 4.0.16or
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;
}