On Wednesday, March 29, 2017 6:04:01 PM CEST Gollum1 wrote: > Quello che mi chiedo, è se in un ambiente di produzione sia meglio > virtualenv o una installazione in /opt con pacchetti aggiunti installati > con il suo sistema di packaging, che permetterebbe il mantenimento degli > aggiornamenti in modo trasparente (aggiornare i pacchetti in pip non è > sempre il massimo)
Per come è pensato Python, installare in produzione è sempre un casino, a partire dall'interprete. Personalmente ho preferito usare un virtualenv e poi abilitarlo tramite script di init o tramite unit file di systemd. Un'altra buona soluzione è usare implicitamente zipimport, ovvero fai uno zip con dentro tutto (incluso un file __main__.py che avvia l'applicazione) e lo richiami con "python file.zip". Inoltre, ho sempre trovato questo punto un grosso tallone d'Achille per Python, perché rende difficoltosa la fruibilità dell'applicazione su piattaforme differenti da quella su cui è stata scritta. Da questo punto di vista, ho sempre invidiato Java, sia per la costruzione dei jar (che sono emulati in parte con la tecnica degli zipimport), sia per la portabilità dell'interprete (una JAVA_HOME compiata per x86_64 la copi/incolli direttamente su di una CentOS 5 senza problemi, con Python devi necessariamente compilare); e invidio Go, a cui guardo sempre di più rispetto a Python e soci Enrico _______________________________________________ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python