LINUX.ORG.RU

как запустить wsgi?

 ,


0

1

помогите пожалуйста запустить сервис.

я сам плохо понимаю что делаю, но по некоторому туториалу: https://www.8host.com/blog/nastrojka-uwsgi-i-nginx-dlya-obsluzhivaniya-priloz...

пытаюсь отобразить в браузере python-приложение, которое состоит из одного файла.

для этого я использую uwsgi. дошёл до момента когда предлагается в файл /etc/init/myapp.conf добавить команды для запуска uwsgi

description "uWSGI instance to serve myapp"
start on runlevel [2345]
stop on runlevel [!2345]
setuid demo
setgid www-data
script
cd /home/kalinin/python/myapp
source myappenv/bin/activate
uwsgi --ini myapp.ini
end script

и запустить сервис командой:

sudo start myapp

проблема в том, что после этой непонятной команды ничего не происходит. сообщение об ошибке такое:

kalinin@lenovo ~/python/myapp $ sudo start myapp
sudo: start: command not found

пробовал и с активированным virtualenv:

(myappenv) kalinin@lenovo /etc/init $ sudo start myapp
sudo: start: command not found



Последнее исправление: prozaik (всего исправлений: 1)

start: command not found

Вроде всё понятно .

по некоторому туториалу

Настройка uWSGI и Nginx для обслуживания приложений Python в Ubuntu 14.04

Ubuntu 14.04

А у вас что за система ?

anonymous
()

Вероятно имелось ввиду sudo service myapp start. Но я так и не понял сервис же wsgi? Приложение он же должен запускать?

anymouze ★★
()
Ответ на: комментарий от prozaik

Mint17 основан на ubuntu 14.04 , в ней используется upstart . Mint18 уже на ubuntu 16.04 , в ней по умолчанию systemd .

Systemd как и upstart — подсистема инициализации Linux — демон для запуска других демонов в Linux и управления ими в процессе работы системы

1 - установить рядом или в виртуалке 14.04

2 - Вроде как в ubuntu 16.04 можно переключиться обратно на upstart .

3 Найти другой мануал на uWSGI под свою систему .

4 Найти другой WSGI , их несколько : https://habr.com/ru/post/426957/ , https://habr.com/ru/post/427217/

anonymous
()

Я стартую uwsgi в скрипте bash, чтоб не возиться с systemd, кроме того это позволяет выполнить некоторые операции перед стартом

ism ★★★
()
Последнее исправление: ism (всего исправлений: 3)

Я стартую для одного сайта uwsgi прямо из командной строки. Минус - каждый раз нужно запускать, если сервер перезагрузился. Если актуально - могу завтра команду скинуть.

fman2
()
Ответ на: комментарий от fman2

если не трудно скинь. пригодится

UPD: не стоит впадать в уныние. uwsgi не сверхсложный

UPD2: уже можно впадать в уныние. кроме uwsgi, есть ещё не менее 7 подобных серверов и, подозреваю, на разных ОС они запускаются по-разному

prozaik
() автор топика
Последнее исправление: prozaik (всего исправлений: 1)
Ответ на: комментарий от prozaik

я не знаю, то ли это. Но запускаю так: uwsgi --socket 127.0.0.1:3031 --chdir /path/to/html/ --wsgi-file django_wsgi.py --master --processes 4 --threads 2 --stats 127.0.0.1:9191 --touch-reload /path/to/touch-file

Файл django_wsgi.py такой:

# django_wsgi.py

import os, sys

sys.path.append('/usr/local/lib/python2.7/dist-packages');

os.environ['DJANGO_SETTINGS_MODULE'] = 'settings'

import django.core.handlers.wsgi

application = django.core.handlers.wsgi.WSGIHandler()

Я совершенно не питон разработчик и не знаю, правильно делаю, но гугление в течение 5 минут мне подсказало эти команды выше.

fman2
()

Тебя либо троллят, либо тут дурачки собрались.

Кратно про systemd (который тебе понадобится чтобы стартовать приложение как демон): https://coreos.com/os/docs/latest/getting-started-with-systemd.html

Более подробно: https://www.digitalocean.com/community/tutorials/understanding-systemd-units-and-unit-files

А вот тебе более кошерный wsgi-сервер: https://gunicorn.org/#quickstart

P.S. Особенно порадовал упоротый анонимус, предложивший поменять инит ради запуска одного сервиса по устаревней инструкции.

WitcherGeralt ★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.