-
Notifications
You must be signed in to change notification settings - Fork 23
Развёртывание проекта с нуля под Ubuntu Server
Тут вкратце написано о том, как поднять у себя проект под Ubuntu Server. Например, в виртуалке.
Установить sshd, nginx, git, PostgreSql, curl
sudo apt-get install openssh-server nginx git postgresql postgresql-server-dev-all, curl
Установить необходимые зависимости для компиляции Ruby
sudo apt-get build-dep ruby1.9.1
(NOTE: По факту у нас вроде используется rmv, а не rbenv, но я разворачивал с rbenv) Установить Ruby с помощью rbenv
git clone https://github.com/sstephenson/rbenv.git ~/.rbenv echo 'export PATH="$HOME/.rbenv/bin:$PATH"' >> ~/.profile echo 'eval "$(rbenv init -)"' >> ~/.profile exec $SHELL -l git clone https://github.com/sstephenson/ruby-build.git ~/.rbenv/plugins/ruby-build rbenv install 2.0.0-p247
Выбрать для использования новую версию Ruby, а не ту, которая устанавливается вместе с системой
rbenv global 2.0.0-p247 rbenv rehash
Установить bundler
gem install bundler rbenv rehash
Задать пароль PostgreSQL
sudo -u postgres psql \password
В файле /etc/postgresql/9.1/main/pg_hba.conf заменить
local all postgres peer
на
local all postgres md5
Перезапустить PostgreSQL
sudo service postgresql restart
Клонировать репозиторий
git clone https://github.com/fbkinfo/rosvybory.git cd rosvybory
Установить все gem’ы
bundle install
Прописать настройки БД
cd rosvybory/config/ cp database.yml.template database.yml nano database.yml
Создать начальную БД
rake db:create rake db:migrate rake db:seed
Прописать для nginx проксирование unicorn. Например, в файле /etc/nginx/sites-available/unicorn_rails:
upstream unicorn { server localhost:8080 fail_timeout=0; } server { listen 80 default deferred; # server_name example.com; root /home/ubuntu/rosvybory/public; location ^~ /assets/ { gzip_static on; expires max; add_header Cache-Control public; } try_files $uri/index.html $uri @unicorn; location @unicorn { proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header Host $http_host; proxy_redirect off; proxy_pass http://unicorn; } error_page 500 502 503 504 /500.html; client_max_body_size 4G; keepalive_timeout 10; }
Удалить конфигурацию nginx по умолчанию:
sudo rm /etc/nginx/sites-available/default
Запустить unicorn
bundle exec unicorn -D
Запустить nginx
sudo service nginx start
Теперь проект должен открываться в браузере.