Page 2 of 2

Re: Ruby on Rails?

Posted: Thu Dec 12, 2013 9:36 pm
by miami
У меня была похожая проблемка с Redmine который используется для разработки.
упиралось все в версию Ruby

Но я не хотел выставлять Redmine в панельку (были свои причины root доступ только у меня и ещё одного доверенного админа, а в панельку под admin могли входить несколько других :-) - чистая паранойя)

В общем я нашел статейку тут https://www.pnv152.ru/doku.php?id=cento ... gsql_nginx
прочитал, устроило, дополнительно смотрел ещё в оригинальную Redmine-овскую мануалку http://www.redmine.org/projects/redmine ... ineInstall.
Прошел по ним, но мне не нужен был постгресс (моя существующая база Redmine на MySQL) чтоб небыло проблемм с переносом старой инфы.
Для установки mysql-devel пошел туда же (спасибо filippoff) ftp://rpmfind.net/linux/remi/enterprise/6/remi/x86_64/ только взял актуальную моей версию (на сейчас mysql-devel-5.5.35-1.el6.remi.x86_64.rpm).
Поставил, скомпилил mysql2, после этого полностью перешел на оригинальный мануал до момента проверки работоспособности Redmine - все поднялось и заработало на 3000 порту.

Сейчас пока остановился (надо хоть иногда спать :-) )

Дальше буду пробовать установить связку passenger+nginx и восстанавливать (переносить) данные Redmine.

Re: Ruby on Rails?

Posted: Fri Dec 13, 2013 10:43 pm
by miami
Устанавливаю passenger+nginx по https://www.pnv152.ru/doku.php?id=cento ... gsql_nginx:
1. ставим passenger - все ставиться как надо.
2. при установке passenger-install-nginx-module - вылетает ошибка при проверке Checking for Curl development headers with SSL support... - не находит curl-devel - хотя он стоит и, по утверждению системы, актуальной версии. (тут я затупил :-) на час-два)
НО!!!
если внимательно почитать вывод - все очень просто - оказалось у каталога /tmp были выставлены права 777 - что не вязалось с "политикой секретности curl-devel with ssl - вернул права 755 - и все запустилось

при установке - выбираю 1 (каталог компиляции по умолчанию /opt/nginx/) - т.к. nginx уже запущен и работает для нескольких сайтов

далее все собирается, выводится сообщение об добавлении строк в конфигурационный файл - можно сохранить вывод, но в /opt/nginx/conf будет пример конфигурационного файла (вообще предполагается, что nginx и будет запускаться оттуда, но нам это не надо - он у нас управляется панелькой)

далее смотрим где лижит исполняемый файл nginx - whereis nginx
у меня он оказался (думаю как и у всех :-) ) в /usr/sbin/nginx
я его переименовал на всякий случай, остановил nginx, заменил этот файл, запустил nginx
!!! вот тут у меня вопрос к разработчикам - по идее этот файл будет заменен при обновлении панельки потому что панелька собирает свою версию nginx - или все-таки нет?

после замены файла и запуска nginx редактируем /etc/ngnix/nginx.conf
добавляем строки про passenger и ruby (2 строки в раздел http) в точной копиии как предложено было после компиляции

смотрим под каким пользователем запускается nginx (по умолчанию настроек панельки одноименный) - находим наш установленный Redmine (или другое приложение) и выставляем пользователя на каталог тут_полный_путь/public на соответствующего пользователя (chown -R ngnix:ngnix public)

после этого добавляем в конфигурационный файл /etc/ngnix/ngnix.conf, а лучше создаем в /etc/ngnix/conf.d файл с названием нашего рессурса вида название_ресурса.conf и добавляем в него предложенное после компиляции содержимое секции server {} - указываем обязательно адрес ресурса и полный путь до нашего public (не забываем указать запись DNS для нашего ресурса)

перезапускаем nginx - проверяем работоспособность ресурса

пока все
на очереде перенос данных Redmine c другого сервера

p.s. жду упреков и советов - ну и ответов на вопросы :-)
прошу прощения за корявость написания - пишу что параллельно, что после (после не всегда в тот же день)

Re: Ruby on Rails?

Posted: Sat Dec 14, 2013 9:00 pm
by miami
Благополучно переехал.

перенос данных брал отсюда https://www.pnv152.ru/doku.php?id=cento ... gsql_nginx.

бали проблемы с процессом окончательной миграции - но это из-за того, что у меня была миграция с обновлением (на новом сервере стоял новый Redmine):
1. при прогоне импортированных в пустую базу данных некоторые индексы нужно просто удалить допустим через phpmyadmin, некоторые столбцы надо было переименовать чтоб скрипт миграции создал свои, а потомо вернуть названия, а созданные скриптом удалить - но это мелочи - все данные выводяться в консоле в процессе миграции.
2. обязательно обратите внимание на то что менять стоит только:
  • configuration.yml
    database.yml - только данные доступа к базе (базам) - остальное можно комментировать
!!! если обновляетесь ни в коем случае не меняйте settings.yml

всем удачи :-)

Re: Ruby on Rails?

Posted: Fri Apr 03, 2015 6:41 am
by miami
miami wrote:!!! вот тут у меня вопрос к разработчикам - по идее этот файл будет заменен при обновлении панельки потому что панелька собирает свою версию nginx - или все-таки нет?
Действительно, файл перезаписывается.

Re: Ruby on Rails?

Posted: Tue Aug 02, 2016 9:00 pm
by minzak
Тоже интересует связка VestaCP + Nginx + Php-Fpm + RoR на CentOS 6.8 x64
Есть 2 ньюанса: ROR (Passenger) может работать как библиотека подгржаемая в NGINX или Standalone.
https://www.phusionpassenger.com/librar ... proxy.html
https://www.phusionpassenger.com/librar ... odule.html
Хотелось бы Второй вариант тогда каждый сервис на своем порту и легко мониторить, настраивать.. (curl --fail -sSLo /etc/yum.repos.d/passenger.repo https://oss-binaries.phusionpassenger.c ... enger.repo & yum install passenger passenger-devel -y)
И тогда все красиво должно работать:
passenger start --daemonize --address 127.0.0.1 --port 4000 --log-file /var/log/passener.4000.log --pid-file /var/run/passenger.4000.pid
Но что-то у меня не доходят руки ((
Кроме того Новые версии NGINX - работают по другому - и требуют перекомпиляции, и загружают модули:
#/usr/lib/ruby/1.8/phusion_passenger/locations.ini
nginx_module_path=/usr/lib64/nginx/modules/passenger_native_support.so


Перекомпиляция - как обычно портит кучу путей, нужно каждый выставить так, чтобы не отличить было как при обычной установке а не в /opt.
при passenger-install-nginx-module нужно указать что-то на подобии:

--sbin-path=/usr/sbin/nginx --conf-path=/etc/nginx/nginx.conf --error-log-path=/var/log/nginx/error.log --http-log-path=/var/log/nginx/access.log --pid-path=/var/run/nginx.pid --lock-path=/var/run/nginx.lock --http-client-body-temp-path=/var/cache/nginx/client_temp --http-proxy-temp-path=/var/cache/nginx/proxy_temp --http-fastcgi-temp-path=/var/cache/nginx/fastcgi_temp --http-uwsgi-temp-path=/var/cache/nginx/uwsgi_temp --http-scgi-temp-path=/var/cache/nginx/scgi_temp --user=nginx --group=nginx --with-http_realip_module --with-http_addition_module --with-http_sub_module --with-http_dav_module --with-http_flv_module --with-http_mp4_module --with-http_gunzip_module --with-http_geoip_module --with-http_random_index_module --with-http_secure_link_module --with-http_auth_request_module --with-mail --with-mail_ssl_module --with-openssl=/usr/src/openssl-1.0.2g

И еще не помню команда, где указать модули, и указать путь на исходники пасенжера, он скомпилируется с его поддержкой, тогда в конфиге будет понимать команды passenger


не могу найти верного варианта из двух.

Re: Ruby on Rails?

Posted: Thu Jul 18, 2019 12:17 am
by Mikhail29
filippoff wrote:
Tue Sep 24, 2013 6:55 pm
Ставил на CentOS 6.4 64bit

1. Ставим весту обычным способом. Для нужного сайта создаем домен и отключаем nginx. Остальные сайты можно настраивать как угодно. Для public_html делаем

Code: Select all

chown -R apache:apache /home/admin/web/domain.tld/public_html/

От имени admin по умолчанию ничего работать не будет (у меня не работает).
CentOS 7 ставил с готовых пакетов rvm + ruby on rails, проблем под admin не было просто надо было указать

Code: Select all

PassengerDefaultUser admin
в конфигах вместо apache и у меня всё прекрасно запустилось.