История изменений
Исправление the1, (текущая версия) :
с systemd реально все проще … с юнитами systemd просто вписываешь найстройки в ини файл и ничего особо осваивать не нужно
Поискал про daemontools, там на SO была ссылка, что runit – это преемник (типа). Поставил runit (да, долго, торможу, и другие дела). Всё старое (до этого был sysv) стартует по дефолту (как я понял, это определяет 5-ый runlevel). Скопи-пастил из доки для gunicorn (апп-сервер питоновский) примитивный скрипт:
#!/bin/sh
GUNICORN=/путь/к/аппу/venv/bin/gunicorn
ROOT=/путь/к/аппу
PID=/var/run/gunicorn.pid
APP='app:create_app()'
if [ -f $PID ]; then rm $PID; fi
cd $ROOT
exec $GUNICORN --workers=2 -b 'unix:/tmp/gunicorn.sock' --pid=$PID $APP
Всё хорошо: апп работает (вызывается nginx’ом), и runit перезапускает gunicorn если его убить.
Про предпочтение системд из-за работы я понял. А по поводу «проще»? У тебя какие-то спец требования были к тому сервису? Или просто все остальные системы инициализации были сложными в освоении? Мне кажется runit очень прост (но я нуб).
Нормальный софт — это как раз systemd, тащемта. Пользуюсь уже семь лет, горя с апгрейдами не знаю, ЧЯДНТ?
Я не знаю что сказать… Нет. Просто нет.
Исходная версия the1, :
с systemd реально все проще … с юнитами systemd просто вписываешь найстройки в ини файл и ничего особо осваивать не нужно
Поискал про daemontools, там на SO была ссылка, что runit – это преемник (типа). Поставил runit (да, долго, торможу, и другие дела). Всё старое (до этого был sysv) стартует по дефолту (как я понял, это определяет 5-ый runlevel). Скопи-пастил из доки для gunicorn (апп-сервер питоновский) примитивный скрипт:
#!/bin/sh
GUNICORN=/путь/к/аппу/venv/bin/gunicorn
ROOT=/путь/к/аппу
PID=/var/run/gunicorn.pid
APP='app:create_app()'
if [ -f $PID ]; then rm $PID; fi
cd $ROOT
exec $GUNICORN --workers=2 -b 'unix:/tmp/gunicorn.sock' --pid=$PID $APP
Всё супер, runit его перезапускает если его убить.
Про предпочтение системд из-за работы я понял. А по поводу «проще»? У тебя какие-то спец требования были к тому сервису? Какие? Я нуб если что.
Нормальный софт — это как раз systemd, тащемта. Пользуюсь уже семь лет, горя с апгрейдами не знаю, ЧЯДНТ?
Я не знаю что сказать… Нет. Просто нет.