Obecnie rozwijam swój pierwszy prawdziwy projekt python-flask i mam zamiar skonfigurować serwer kompilacji, aby wdrożyć "najnowszą kompilację", która jest budowana przy każdym odprawie.Jak uruchomić uwsgi z virtualenv
Ustawiłem skrypt uruchamiania, w którym uruchamiam aplikację za pomocą uwsgi i ta część działa poprawnie. Niedawno zacząłem również używać virtualenv
i w ten sposób zainstalowane pakiety są dodawane do mojego projektu pod projectname\flask\Lib\site-packages
.
Używam nginx
jako serwer WWW i config wygląda następująco:
location/{ try_files $uri @graderbuild; }
location @graderbuild {
include uwsgi_params;
uwsgi_param UWSGI_CHDIR /usr/local/grader/build;
uwsgi_param UWSGI_PYHOME /usr/local/grader/build;
uwsgi_pass 127.0.0.1:3031;
}
Zaczynam uwsgi
pomocą tego:
exec /usr/local/bin/uwsgi --master --socket 127.0.0.1:3031
--wsgi-file restserver.py --callable app --processes 4 --die-on-term
--threads 2 >> /var/log/grader-build.log 2>&1
Teraz tam, gdzie wiem, czy ja” m robi to dobrze ... obecnie rozmieszczam cały folder na serwerze kompilacji. Nie chcę instalować globalnych modułów pythona tylko po to, aby moja kompilacja działała. Prawda czy fałsz?
Błąd pojawia aktualnie jest:
ImportError: No module named flask_wtf
Jeśli mam rację, w jaki sposób skonfigurować ustawienia do korzystania z site-packages virtualenv
? Moja preferowana lokalizacja byłaby w skrypcie startup
, a nie w konfiguracji nginx
.
to zmieniło, ale teraz mam: 'ImportError: No module o nazwie site'. Czy wiesz, co to może być? – Asken
Próbowałem zaczynając od '--no-site' ale potem nie mogę zaimportować' os' modułu – Asken
@Asken Spróbuj utworzyć virtualenv za pomocą '--system-site-packages'? – iMom0