Как я могу запустить сервер Rails при запуске Ubuntu?

1

Мне нужно запустить эту команду

cd /my/app/path&&rails s 

каждый раз, когда я запускаю свою виртуальную машину Ubuntu. Я пытался добавить его в /etc/rc.local файл, а также в /etc/init.d/rc.local но это не работает

Я также пытался запустить его в сценарии sh, но тоже не работает. Есть идеи? Я использую vagrant для виртуализации Ubuntu.

TWONEKSONE
источник
Вы не должны запускать Rails таким образом. Сервер по умолчанию и режим отладки довольно медленный. Если вы хотите, чтобы Rails работал непрерывно, вам нужен какой-нибудь сервер с достойной производительностью, такой как Unicorn, затем настройте задание Upstart (например, это gist.github.com/errordeveloper/4329034 ). Кроме того, какую версию Ruby вы запускаете? Вы используете RVM или rbenv? Или система Ruby? Какую учетную запись пользователя должен использовать сервер Rails?
slhck
Я использую rvm и ruby ​​2.0. Мне нужно запустить мое приложение на локальном компьютере. Это небольшое приложение для передачи небольшой активности. Мне не нужно много производительности. Должен ли я использовать другой сервер?
TWONEKSONE
Нет, тогда, наверное, все в порядке. Но когда вы перенаправляете вывод этой команды, например, cd /path && rails s > /var/log/myapp.log 2>&1, вы увидите, какая ошибка не позволяет запустить сервер Rails. Скорее всего, RVM должен быть загружен в вашу оболочку. Убедитесь, что если вы вставите это в скрипт, вы запустите его как ваш пользователь, например, sudo -u user bash -c 'cd /path && rails s' будет работать как пользователь по умолчанию и использовать Bash, который может потребоваться загрузить RVM (конечно, заменить user с именем пользователя, под которым запускается проект Rails).
slhck
Спасибо за совет. Если я решу использовать сервер с более высокой производительностью, я должен использовать?
TWONEKSONE
Я уже упоминал, что вы можете использовать Unicorn. В Ubuntu есть немало руководств по Unicorn и Rails. Но сначала вам придется диагностировать проблему, так как даже для Unicorn вам нужно, чтобы он загружал RVM.
slhck

Ответы:

0

Если у вас предустановлены рубиновые рельсы, просто наберите

rails s, если вы хотите изменить порт и доступ, то

rails s -pXXXX, где «XXXX» обозначает номер порта, на котором вы хотите его запустить

например. rails s -p8080, где я запускаю сервер rails на порту 8080

Ritumoni Sharma
источник
-1

Лучший способ - настроить сервер в определенном месте, где вы хотите (например, ваш проект). Затем введите следующую команду home / user / projects / имя_проекта $ rails s.

Если вы не уверены в своем рабочем каталоге, введите «pwd» в командной строке из Ubuntu. Он обозначает «печатать рабочий каталог» и даст вам текущий каталог, на который вы указываете. Если у вас есть несколько проектов, перейдите в родительский каталог, введите «ls» в терминале, и он выдаст вам все дочерние каталоги, которые в данный момент находятся в родительском каталоге.

Ritumoni Sharma
источник