
Alexander
16.11.2016
10:14:41
в среднем примерно 4 часа / проект, не более пары дней на каждый)
более того, я перешёл ещё во времена Django 1.5, когда эта поддержка была экспериментальной

Max
16.11.2016
10:21:47

Dmitry
16.11.2016
11:18:29
*25617 upstream prematurely closed connection while reading response header from upstream, client: 127.0.0.1, server: django-test, request: "GET / HTTP/1.1", upstream: "uwsgi://unix://var/run/uwsgi/uwsgi.sock:", host: "django-test"

Google

Dmitry
16.11.2016
11:18:33
вот подскажите
бед гейтвей ловлю
uwsgi_pass django;
в конфиге
и вот такое
s -la /var/run/uwsgi/uwsgi.sock
srwxrwxrwx 1 nginx nginx 0 Ноя 4 15:29 /var/run/uwsgi/uwsgi.sock
В uwsgi.ini gid\uid nginx
вроде все

Max
16.11.2016
11:39:02
Settings.py, debug - что там прописано?
И allowed hosts
Джанго рубит все конекты при выключенном дебаге и пустом allowed hosts

Александр
16.11.2016
12:06:39
Эм, у меня phpfpm такое было, перенес сокс в тмп

Dmitry
16.11.2016
12:10:21
нашел короче факап

Google

Sergey
16.11.2016
12:12:10

Dmitry
16.11.2016
12:14:56
я просто шокирован и растерян

Max
16.11.2016
12:23:26
Давай рассказывай, интересно же )

Dmitry
16.11.2016
12:30:29
http://stackoverflow.com/questions/23872801/running-multiple-uwsgi-python-versions ну это пиздец, граждане
короче прикол такой, что увсги не хочет джангать питон 2.7
решением этого говна якобы является прописывание в инишке plugins=python27 и установка uwsgi-plugins-python и uwsgi-plugins-common
но вот только ничерта для 2.7 не появляется плагин
а теперь я на опенстаке вижу что его предлагают билдить с поддержкой
сейчас вот как-то так это

Max
16.11.2016
12:36:10
ой

Dmitry
16.11.2016
12:39:15
я вот думаю, если ему просто сошку подсунуть

Sergey
16.11.2016
12:40:27
там по ссылке написано же, как надо сделать несколько сошек

Max
16.11.2016
12:40:31
uwsgi-plugin-python uwsgi-plugin-python3
не канает?
у меня помнится что-то такое было и вот как раз 2 плагина из апта

Dmitry
16.11.2016
12:41:12

Sergey
16.11.2016
12:41:29
dpkg -L uwsgi-plugin-python

Max
16.11.2016
12:41:37
ну так в этом случае просто uwsgi-plugin-python это и есть 2.7

Sergey
16.11.2016
12:41:39
у тебя в этом пакете разве не 2.7?

Google


Max
16.11.2016
12:41:59
titude search uwsg
✘ gaara@gaara-netbook ~/ronin-pro/club develop aptitude show uwsgi-plugin-python
Пакет: uwsgi-plugin-python
Версия: 2.0.12-7ubuntu4
Состояние: не установлен
Приоритет: дополнительный
Раздел: universe/web
Сопровождающий: Ubuntu Developers <ubuntu-devel-discuss@lists.ubuntu.com>
Архитектура: amd64
Размер в распакованном виде: 260 k
Зависимости: libc6 (>= 2.14), libpython2.7 (>= 2.7), uwsgi-core (= 2.0.12-7ubuntu4)
Предлагает: python-uwsgidecorators
Конфликтует: uwsgi-plugin-python:i386
Предоставляет: httpd-wsgi
Описание: WSGI plugin for uWSGI (Python 2)
uWSGI presents a complete stack for networked/clustered web applications, implementing message/object passing, caching, RPC and process management. It is
designed to be fully modular. This means that different plugins can be used in order to add compatibility with tons of different technology on top of the
same core.
This package provides Python WSGI plugin for uWSGI (linked with Python 2 runtime).
Сайт: http://projects.unbit.it/uwsgi/


Dmitry
16.11.2016
12:43:21
не линкануть ему 2.7 из python.so

Max
16.11.2016
12:43:53
ось какая?

Dmitry
16.11.2016
12:44:02
centos 6.7

Max
16.11.2016
12:46:33
полуркай аналог в юме
этого сраного плагина
нету цента под рукой
одни дебианы с бубунтами
лишний раз линковать чота кудато имхо не кошерно

Dmitry
16.11.2016
12:48:14
иначе бы он хватал его без plugins

Max
16.11.2016
12:48:39
проверь пакетик uwsgi-plugin-python

Dmitry
16.11.2016
12:50:18
нету инфы какой питон у нее внутре

Max
16.11.2016
12:50:33
это как так

Alexander
16.11.2016
12:52:09
поставьте просто Docker или Rkt)
и в контейнере всё запускайте с нужными версиями

Dmitry
16.11.2016
12:52:26
я не понимаю почему так слажно

Alexander
16.11.2016
12:52:36
uWSGI - это пакет питона

Google

Max
16.11.2016
12:52:37
а в зависимостях чо ничо нету?

Alexander
16.11.2016
12:53:04
я ставлю uWSGI так:
python3 -m pip install uwsgi

Dmitry
16.11.2016
12:53:16
да вот я думаю снести все к хуям и тоже так поставить

Alexander
16.11.2016
12:53:18
для 2 питона будет свой uwsgi

Dmitry
16.11.2016
12:53:23
но вот пип не ставит сервис
и это неприятно

Admin
ERROR: S client not available

Alexander
16.11.2016
12:53:42
пип ставит пакет и там где-то будет бинарник

Max
16.11.2016
12:53:47
ток вот один и тот же UWSGI из репы как с 3м так и со 2м работает норм

ptchol
16.11.2016
12:53:52
ты потом ещё зубы все раскрошишь об бинарные зависимости (не дай бог конечно)

Dmitry
16.11.2016
12:54:06

ptchol
16.11.2016
12:54:07
когда тебе один и тот же пакет для в2 и в3 будет требовать разных версий системных либ

Dmitry
16.11.2016
12:54:09
который ничерта не работает

Max
16.11.2016
12:54:30

Alexander
16.11.2016
12:54:36
ну, логичнее для 2 питона ставить его внутри 2, а для 3 внутри 3, имхо
и все эти старые пакеты слишком старые
в убунте и прочих ОС

Dmitry
16.11.2016
12:54:49

Alexander
16.11.2016
12:54:57
uWSGI лучше всего ставить через pip
и тогда будут новые

Google

Alexander
16.11.2016
12:55:19
а systemd .service-файл, если надо - ручками написать

Max
16.11.2016
12:55:34

Dmitry
16.11.2016
12:55:38
там не системд
писать иниты такое себе развлечение

Max
16.11.2016
12:56:04

Dmitry
16.11.2016
12:56:14
в прошлый раз это написано было так херово, что рестартилось touch файлика
ну т.е. старт то оно делало

Alexander
16.11.2016
12:56:50
если оно в докере, то запускается как-то так:
EXPOSE 8001
CMD ["uwsgi", \
"--socket", ":8001", \
"--module", "byvshie.wsgi:application", \
"--env", "DJANGO_SETTINGS_MODULE=byvshie.settings", \
"--chdir", "/usr/src/app", \
"--master", \
"--binary-path", "/usr/local/bin/uwsgi", \
"--no-orphans", \
"--processes", "3", \
"--uid", "www-data", \
"--gid", "www-data", \
"--harakiri", "20", \
"--post-buffering", "1048576", \
"--max-requests", "5000", \
"--vacuum", \
"--enable-threads", \
"--thunder-lock"]

Dmitry
16.11.2016
12:56:51
можно конечно выдрать сейчас инит из установленного увсги

Alexander
16.11.2016
12:57:10
то есть нужно запустить uwsgi с рядом параметров и оно заработает и всё

Dmitry
16.11.2016
12:57:13
если оно в докере, то запускается как-то так:
EXPOSE 8001
CMD ["uwsgi", \
"--socket", ":8001", \
"--module", "byvshie.wsgi:application", \
"--env", "DJANGO_SETTINGS_MODULE=byvshie.settings", \
"--chdir", "/usr/src/app", \
"--master", \
"--binary-path", "/usr/local/bin/uwsgi", \
"--no-orphans", \
"--processes", "3", \
"--uid", "www-data", \
"--gid", "www-data", \
"--harakiri", "20", \
"--post-buffering", "1048576", \
"--max-requests", "5000", \
"--vacuum", \
"--enable-threads", \
"--thunder-lock"]
да понятно что в докере свет, розовые пони и секси феи
я думаю что можно безпроблем запулить уже собранный увсги с 2.7 и не париться вообще

Alexander
16.11.2016
12:58:18
и, кстати, для остановки надо KillSignal=SIGQUIT (это если в systemd)

ptchol
16.11.2016
12:58:48

Alexander
16.11.2016
12:59:43
в requirements.txt
RUN ....
&& pip install --no-cache-dir -r /usr/src/app/requirements.txt \
...
CMD выше написал свой.. и всё работает ок