SmartVPS - едно хостинг решение за много акаунти!
Всеки отделен акаунт е с включени безплатни бекъпи, addon домейни, PHP-FPM с OPcache и кеширане на съдържание за светкавично бързи сайтове. И всичко това на страхотна цена!
Преди да инсталирате Ruby on Rails на Вашия акаунт, трябва да проверите и настроите акаунта си за следните неща:
Трябва да имате раздел "Уеб приложения" във Вашия хостинг Контролен панел. Ако нямате раздел "Уеб приложения" във Вашия Контролен панел, тогава инструкциите в тази статия не са валидни за Вашия акаунт и сървър. Можете да ни пишете за повече информация и съдействие.
"SSH достъп" и "Мрежови инструменти" трябва да са активирани за Вашия акаунт през раздел "SSH Достъп" на Контролния панел.
RVM пакетите са подписани с GnuPG, така че трябва да настроите GnuPG и да изтеглите необходимите публични ключове. За целта създайте директория, където да съхраните ключовете, презаредете Вашия bash профил и изтеглете и импортирайте ключовете с тези команди:
Затворете всички SSH екрани и се свържете отново. Можете да проверите дали RVM е зареден успешно за Вашата SSH сесия чрез следната команда:
type rvm | head -n 1 Трябва да получите "rvm is a function" като отговор в конзолата.
RVM използва /bin/df инструмента, за да провери наличното свободно дисково пространство на сървъра, преди инсталирането на нова Ruby версия. Достъпът до този инструмент е забранен на нашите сървъри, с което инсталирането на нова Ruby версия ще бъде неуспешно. Тъй като няма опция да се спре тази проверка, трябва ръчно да се промени функцията __rvm_calculate_space_free. Можете да направите това със следната команда, която ще информира RVM, че има 9999MB свободното дисково пространство:
sed -i "/__rvm_calculate_space_free/c\__free_space=9999M" /home/$USER/private/.rvm/scripts/functions/manage/base_install /home/$USER/private/.rvm/scripts/migrate Важно: Ако обновите RVM до по-нова версия, може да се наложи да направите тази промяна отново.
"Autolibs" е RVM инструмент, който автоматично инсталира всички необходими системни пакети. Тъй като Вашия SSH потребител няма достъп за такива действия, трябва да изключите този инструмент със следната команда:
rvm autolibs 0Ако някои от gem инсталациите са неуспешни или Вашият проект не работи заради липсващи задължителни пакети, можете да се свържете с нас за помощ. Със следната команда можете да проверите за липсващи задължителни пакети:
rvm requirements
Инсталиране на Ruby
При компилиране на Rubby, RVM може да достигне ограничение за памет, затова ограничете RVM да използва не повече от 3 процеса едновременно чрез следната команда:
echo "rvm_make_flags=( -j 3 )" >> /home/$USER/private/.rvm/scripts/functions/rvmrc За да се приложи тази промяна, презаредете RVM:
rvm reload
Инсталирайте последната налична версия за Ruby с тази команда:
rvm install ruby --latest
RVM ще компилира Ruby изцяло и ще инсталира глобален gemset. В момента на писане на тази статия, последната налична версия на Ruby е 3.3.2. За да преминете към използването на тази версия, изпълнете следната команда:
rvm use 3.3.2
Създаване на WebApps проект за Ruby on Rails
Създайте директория за Rails WebApps проекта (напр. "~/private/blog") и влезте в нея, използвайки тази команда:
mkdir /home/$USER/private/blog && cd /home/$USER/private/blog
Създайте WebApps проекта за Ruby on Rails приложението. Можете да създадете проект за уеб приложението чрез раздел "Уеб приложения" на хостинг Контролния панел или използвайки следната команда на sureapp CLI инструмента:
Името на WebApps проекта в дадения пример е "Blog".
Инсталиране и настройка на Rails
Можете да инсталирате Rails директно в глобалния gemset, но много разработчици предпочитат да пазят глобалния gemset чист и затова инсталират Rails в gemset на всеки отделен проект. Така отделните проекти могат да имат различни версии на Rails. За да инсталирате Rails, следвайте тези стъпки:
От създаването на проекта в предишната стъпка трябва да се намирате в неговата директория (напр. "~/private/blog"), така че можете да създадете gemset за Вашия блог проект, който ще е с еднакво име с директорията - "blog":
rvm use ruby-3.3.2@blog --ruby-version --create Опцията “—ruby-version” създава файлове ".ruby-version" и ".ruby-gemset" в главната директория на проекта. RVM разпознава тези файлове в главната директория на приложението и с тях зарежда зададената версия на Ruby и правилния gemset, когато влезете в тази директория.
За да инсталирате Rails в gemset "blog", използвайте тази команда:
gem install rails Процесът може да отнеме повече време, тъй като Rails изисква добавянето на много допълнителни gem пакети.
Създайте нов Rails проект, който ще използва името на текущата директория ("blog"):
rails new . Може да се покаже съобщение дали желаете да презапишете файла ".ruby-version". Старият и новият файл са с идентично съдържание, така че няма значение коя опция ще изберете.
Ако някои gem пакети не са инсталирани успешно локално, можете да коригирате това със следната команда:
bundle install
Rails работи по подразбиране на порт 3000. Трябва да промените порта с този на Вашия WebApps проект във файла "config/puma.rb". Можете да направите това ръчно чрез раздел "Файлове" на хостинг Контролния панел, като промените порта в следния ред на файла:
port ENV.fetch("PORT") { 3000 } Можете да направите това и чрез следните команди, които ще вземат порта на Вашия WebApps проект (работещ в директория "~/private/blog/") и ще го сложат на правилното място във въпросния файл:
Добавете домейна/поддомейна, къдете ще използвате Rails, във файла "config/application.rb" в блока с код "class Application < Rails::Application", за да позволите заявки от Вашия домейн/поддомейн към Ruby on Rails приложението. Ако желаете сайтът Ви да работи с поддомейн blog.example.com, тогава добавете следния ред във файла "config/application.rb":
config.hosts << "blog.example.com" Можете да използвате и следната команда, за да постигнете това:
Трябва да настроите WebApps проекта (напр. "Blog") да стартира Rails уеб сървър за Вашето приложение в RVM средата. Можете да направите това със следната команда:
sureapp project modify --start "source $(rvm env --path) && rails server" BlogКомандата за стартиране на проекта ще зарежда съответната RVM среда, която се взима с командата "rvm env --path", след което се стартира и Rails уеб сървъра с командата "rails server".
Изберете страницата, на която да е достъпно Rails приложението чрез раздел "Уеб приложения" на хостинг Контролния панел. Можете да направите това, като кликнете на бутона с иконка на молив () до проекта "Blog" и изберете домейна и поддомейна чрез съответните падащи менюта в показалия се екран.
Стартирайте "Blog" проекта чрез бутона с иконка на червен кръг () до него в раздел "Уеб приложения" на хостинг Контролния панел.
Посетете адреса на Rails приложението (напр. https://blog.example.com/).
Минималният срок за поръчка на споделен хостинг е 12 месеца. Нужно е пълно предплащане за целия период на договора. 100-дневен период на рекламация. Цената за регистрация на домейн и издаване на SSL сертификат не подлежи на възстановяване в случай на предсрочно прекратяване на договора.