6266 / 3703 / 313
Регистрация: 13.02.2014
Сообщений: 13,670
|
||||||
1 | ||||||
Написать systemd unit для ruby приложения09.11.2021, 11:00. Показов 619. Ответов 0
Доброго времени суток. не знаю, может это лучше в раздел Ruby)
В общем, есть приложение на ruby: https://github.com/express42/reddit После скачивания, установки зависимостей и запуске из папки команды:
Но не совсем понятно откуда эта команда берет параметры запуска веб-сервера и как их воспроизвести. В мануалах по puma написано, что вроде бы надо натравливаться на файл puma.rb, но такого файла в проекте нет) Задача следующая: завернуть запуск веб-сервера puma вместе со стартом системы через systemd service. Наваял что-то такое, но в общем-то не запускается: Код
[Unit] Description=Puma HTTP Server After=network.target # Uncomment for socket activation (see below) # Requires=puma.socket [Service] # Puma supports systemd's `Type=notify` and watchdog service # monitoring, if the [sd_notify](https://github.com/agis/ruby-sdnotify) gem is installed, # as of Puma 5.1 or later. # On earlier versions of Puma or JRuby, change this to `Type=simple` and remove # the `WatchdogSec` line. Type=simple # If your Puma process locks up, systemd's watchdog will restart it within seconds. #WatchdogSec=10 # Preferably configure a non-privileged user #User=puma # The path to your application code root directory. # Also replace the "<YOUR_APP_PATH>" placeholders below with this path. # Example /home/username/myapp WorkingDirectory=/home/reddit-app/reddit # Helpful for debugging socket activation, etc. # Environment=PUMA_DEBUG=1 # SystemD will not run puma even if it is in your path. You must specify # an absolute URL to puma. For example /usr/local/bin/puma # Alternatively, create a binstub with `bundle binstubs puma --path ./sbin` in the WorkingDirectory #ExecStart=/<FULLPATH>/bin/puma -C <YOUR_APP_PATH>/puma.rb # Variant: Rails start. # ExecStart=/<FULLPATH>/bin/puma -C <YOUR_APP_PATH>/config/puma.rb ../config.ru # Variant: Use `bundle exec --keep-file-descriptors puma` instead of binstub # Variant: Specify directives inline. ExecStart=/usr/local/bin/puma -C /home/reddit-app/reddit/app.rb #ExecStart=/<FULLPATH>/puma -b tcp://0.0.0.0:9292 #-b ssl://0.0.0.0:9293?key=key.pem&cert=cert.pem Restart=always [Install] WantedBy=multi-user.target Подскажите направление, кто с ruby приложениями работает)
0
|
09.11.2021, 11:00 | |
Ответы с готовыми решениями:
0
Unit-test для простого консольного приложения Стоит ли писать функциональные и unit тесты для простого приложения? Написать unit-тест для кода Написать консольное приложение для подсчета метрики спена для языка Ruby Ruby vs Python для back-end'a мобильного приложения, нужен realtime (возможно тема холиварная) |
09.11.2021, 11:00 | |
09.11.2021, 11:00 | |
Помогаю со студенческими работами здесь
1
Unit Tests для проекта с Unit Of Work Как написать unit test (gtest) для работы с файлом? как и какие написать unit test для данного класса? Написать программу создания модуль Unit для простейших геометрических фигур Написать программу создания модуля unit, для простейших геометрических фигур: прямоугольника и круга. Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи | |||||
Что такое HCL Notes и как с ним работать
InfoMaster 10.01.2025
HCL Notes (ранее известный как IBM Notes и Lotus Notes) представляет собой комплексную платформу для совместной работы и обмена информацией в корпоративной среде. Это многофункциональное решение,. . .
|
Как работать с Git из Windows и Visual Studio
InfoMaster 10.01.2025
Работа с Git в Windows
Работа с Git в операционной системе Windows может быть осуществлена с помощью различных инструментов, каждый из которых обладает своими уникальными возможностями и. . .
|
Аналог оператора switch case в Python
InfoMaster 10.01.2025
Оператор switch case используется в программировании для выбора одного из нескольких вариантов исполнения кода. Однако в языке Python этот оператор отсутствует. Понимание аналогов switch case в. . .
|
Отличия абстрактного класса от интерфейса
InfoMaster 10.01.2025
В современной разработке программного обеспечения существуют два основных механизма реализации абстракции: абстрактные классы и интерфейсы. Эти инструменты, хотя и схожи в своей основной цели -. . .
|
Как работать в Git
InfoMaster 10.01.2025
Git — это одна из наиболее популярных систем контроля версий, которая активно используется разработчиками по всему миру. Она позволяет эффективно управлять изменениями в коде, координировать работу. . .
|
Реализация передвижения персонажа в Unity3d на C#
InfoMaster 10.01.2025
Реализация передвижения персонажа в Unity3D начинается с правильной настройки проекта. Этот этап критически важен для создания отзывчивого и плавного управления. Рассмотрим основные шаги для создания. . .
|
Docker: руководство для начинающих
InfoMaster 10.01.2025
В современном мире разработки программного обеспечения контейнеризация стала неотъемлемой частью процесса создания и развертывания приложений. Docker, как ведущая платформа контейнеризации, произвела. . .
|
Книги и учебные ресурсы по C#
InfoMaster 08.01.2025
Базовые учебники и руководства
Одной из лучших книг для начинающих является "C# 10 и . NET 6 для начинающих" Эндрю Троелсена и Филиппа Джепикса . Книга последовательно раскрывает основные концепции. . .
|
Что такое NullReferenceException и как исправить?
InfoMaster 08.01.2025
NullReferenceException - одно из самых распространенных исключений, с которым сталкиваются разработчики на C#. Это исключение возникает при попытке обратиться к членам объекта (методам, свойствам или. . .
|
Что такое Null Pointer Exception (NPE) и как это исправить?
InfoMaster 08.01.2025
Null Pointer Exception (NPE) - это одно из самых распространенных исключений в Java, которое возникает при попытке использовать ссылку на объект, значение которой равно null. Это исключение относится. . .
|
Русский язык в консоли C++
InfoMaster 08.01.2025
При разработке программ на C++ одной из частых проблем, с которой сталкиваются русскоязычные программисты, является корректное отображение кириллицы в консольных приложениях. Эта проблема особенно. . .
|
Telegram бот на C#
InfoMaster 08.01.2025
Разработка ботов для Telegram стала неотъемлемой частью современной экосистемы мессенджеров. C# предоставляет мощный и удобный инструментарий для создания разнообразных ботов, от простых. . .
|