Quando si lavora con le applicazioni Python, ci sono due attività importanti da considerare:
- Come gestire i pacchetti Python.
- Come configurare gli ambienti per le applicazioni Python.
Come tutti sanno, possedere abbondanti pacchetti di applicazioni Python è la chiave del successo per la comunità Python. Per sfruttare al meglio vari pacchetti di applicazioni Python, è necessario un pratico gestore di pacchetti, come pip
o easy_install
. Per ora, il gestore di pacchetti Python più popolare è pip
.
Inoltre, a causa dell'incompatibilità tra le diverse versioni principali di Python - 3.x, 2.7 e 2.6, nonché dell'incompatibilità risultante tra le varie dipendenze, dovresti sempre preparare un ambiente adeguato per ciascuna delle tue applicazioni Python. Virtualenv
fornisce una soluzione fattibile a questo problema: costruire un ambiente Python dedicato e isolato per ciascuna delle tue applicazioni Python. Ogni applicazione può godere dell'ambiente Python più adatto senza rovinare gli ambienti di altre applicazioni.
In questo articolo, ti presenteremo come utilizzare pip e virtualenv per gestire i pacchetti e gli ambienti Python su un'istanza del server CentOS 6.
Prima di procedere, devi:
- Configurare un'istanza del server Vultr CentOS 6 x64 da zero e
- Crea un utente non root con privilegi sudo e accedi con esso.
Installa e usa pip
Innanzitutto, diamo un'occhiata a pip. Installa l'ultimo pip con i seguenti comandi:
sudo yum update
sudo yum install -y python-devel python-setuptools python-pip
sudo pip install --upgrade pip
Una volta installato pip, sarai in grado di utilizzarlo per gestire i pacchetti Python, incluso ma non limitato alla ricerca, installazione, aggiornamento e disinstallazione dei pacchetti Python. Per darvi alcune istruzioni pratiche, elencherò di seguito alcuni comandi pip comuni:
Cerca un pacchetto Python usando pip
pip search [package name]
Installa un pacchetto Python usando pip
a) Installare un pacchetto con il nome del pacchetto:
sudo pip install [package name]
b) Installa una versione specifica di un pacchetto Python:
sudo pip install [package name]==[version]
c) Installa un pacchetto Python da un URL:
sudo pip install [URL]
Elenca i pacchetti Python installati con pip
pip list
Mostra i dettagli di un pacchetto Python installato con pip
pip show [package name]
Aggiorna un pacchetto Python usando pip
sudo pip install --upgrade [package name]
Disinstallare un pacchetto Python usando pip
sudo pip uninstall [package name]
Visualizza la guida di pip
pip help
Installa e usa virtualenv
Come accennato in precedenza, l'incompatibilità tra le diverse dipendenze è una questione degna della tua preoccupazione.
Al fine di evitare problemi che si verificano a causa di incompatibilità, è possibile utilizzare virtualenv
per preparare un ambiente virtuale per contenere le dipendenze adatte per ciascuna delle applicazioni Python. In questo modo, le dipendenze incompatibili possono coesistere senza conflitti e anche le applicazioni Python che dipendono da esse possono coesistere senza conflitti.
Un ulteriore vantaggio dell'utilizzo virtualenv
è che non sono necessari i privilegi di root / sudo per modificare le dipendenze nell'ambiente virtuale, poiché ogni operazione viene eseguita nella directory dell'utente corrente.
Ora esploriamo l'ambiente virtuale creato da virtualenv.
1. Installa virtualenv usando pip
sudo pip install virtualenv
2. Creare un ambiente virtuale dedicato
Prima di gestire una nuova applicazione Python, è possibile utilizzare virtualenv per creare una directory dedicata, un ambiente virtualenv, per memorizzare le seguenti modifiche alle dipendenze del sistema.
Supponi di voler utilizzare una directory "env1" nella tua home directory per contenere l'ambiente virtuale:
cd ~
virtualenv env1
I due comandi precedenti creeranno la directory di ambiente "env1" nella home directory e avvieranno l'ambiente virtuale al suo interno, ovvero copiando l'ambiente Python globale / di sistema che si sta utilizzando nella directory dell'ambiente virtuale e regolando le configurazioni correlate, rendendolo un Python isolato ambiente.
Ora devi attivare l'ambiente virtuale:
source ~/env1/bin/activate
Come vedi, una stringa env1
verrà inserita davanti al tuo prompt della shell, avvisandoti che sei entrato nell'ambiente virtuale isolato.
È possibile utilizzare il comando which python
per confermare l'ingresso. Il sistema ti dirà che stai usando ~/env1/bin/python
piuttosto che l'originale /usr/bin/python
.
Da ora in poi, puoi gestire la tua applicazione Python come desideri, tutte le modifiche alle dipendenze del sistema verranno registrate in questa directory, evitando possibili manomissioni ad altre applicazioni Python.
3. Esci dall'ambiente virtuale
Al termine delle attività, utilizzare il comando seguente per uscire dall'ambiente virtuale:
deactivate
La stringa (env1) scomparirà di conseguenza.
Se vuoi sapere di più su virtualenv, usa il seguente comando:
virtualenv --help