/ / App Django - Cosa installo in virtualenv vs system wide? - python, django, nginx

App Django - Cosa installo in virtualenv vs system wide? - python, django, nginx

Sto lavorando alla creazione della mia prima app web "reale" utilizzando Django.

Ieri ho imparato che dovrei usare un webserver come Nginx per servire file statici e passare richieste per contenuti dinamici alla mia app web. Ho anche imparato che ho bisogno di qualcosa come Gunicorn come intermediario tra il server web (Nginx) e la mia app Django.

La mia domanda riguarda virtualenv. È logico includere nel proprio ambiente separato il software relativo alle app: cosa devo installare in virtualenv e cosa viene installato nel sistema? questa guida sembra che installiamo Python, Nginx e il databasesystem wide (perché sono installati prima che virtualenv sia installato) mentre Django e Gunicorn sono installati in virtualenv. Ha senso che Gunicorn debba andare in virtualenv dal momento dell'importazione della nostra app python, come spiegato Qui. Le altre cose sono necessarie per essere installate a livello di sistema? O posso scegliere in entrambi i modi? È un modo preferito rispetto ad un altro?

Grazie!

risposte:

1 per risposta № 1

Virtualenv è per la gestione delle librerie Python. Non è per la gestione di Python stesso, né per servizi esterni come i database; gestisce comunque le librerie Python che usi per accedere al database.

Non c'è spazio per la confusione qui, perché semplicemente non c'è modo di installare Python stesso o un database all'interno di un virtualenv.