PIP che non si installa nella directory virtuale

Sto tentando di installare django in un virtualenv che già esiste.

Seguendo le istruzioni elencate qui sul sito di pip-install, ho eseguito le seguenti operazioni da SSH.

name@server:~$ . myenv.env/bin/activate (myenv.env)nam@server:~$ pip install django 

Tuttavia, in fondo all'installazione, vedo questo:

 creating /usr/local/lib/python2.7/dist-packages/django error: could not create '/usr/local/lib/python2.7/dist-packages/django': Permission denied 

Sembra che sta cercando di installarlo nella directory globale. Non ho i privilegi di sudo. Sto facendo qualcosa di sbagliato qui?

Aggiornamento: $ PATH = /var/django/myenv.env/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games

  • Funzionamento di sedano come demone durante l'utilizzo di VirtualEnv
  • psycopg2 non trovato da django dopo l'installazione in virtualenv
  • Soluzione per l'installazione di pip installare -E
  • Virtualenv è adatto a un server di produzione?
  • Come deve essere impostato virtualenv in un server Web di produzione (utente, posizione, ecc.)
  • Systemd: Esegui uno script Python all'avvio (virtualenv)
  • Ubuntu - Supervisord e virtualenv
  • Diverse versioni di Python sotto lo stesso imperatore uwsgi?
  • 5 Solutions collect form web for “PIP che non si installa nella directory virtuale”

    Mi dispiace per una risposta tardiva di un anno! Ho avuto lo stesso problema e lo ho risolto, non so se hai cambiato il nome di una directory dopo aver creato l'ambiente virtuale, però. Se è così allora ecco quello che ho fatto.

    1.) deactivate tua v-env. Dopo la correzione è necessario riavviare il v-env, quindi potrebbe anche deactivate adesso. destra?

    2.) Ora, dal momento che abbiamo creato il v-env in un path diverso, dobbiamo cambiare le variables di path statico in questi file.

    Per get la lavorazione del pip non è necessario fare questo, ma lo farò ancora. bin/activate , bin/activate.csh , bin/activate.fish

    bin/pip , bin/pip2 , bin/pip2.7

    bin/easy_install , bin/easy_install2.7

    3.) Per get il lavoro di pip, è necessario correggere l'interpnetworking python nel file pip, questo ha anche una posizione di interpnetworking statica impostata da virtualenv nel process di creazione.

    4.) Per far funzionare easy_install? Hai indovinato, correggere la posizione dell'interpnetworking.

    Spero che questo ha aiutato each persona a leggere questo in futuro. Mi dispiace OP, per essere in ritardo.

    Ho avuto questo stesso problema.

    Ho eliminato l'ambiente virtuale e ho creato un nuovo, che ha risolto il problema.

    Probabilmente non la risposta che speravate, ma siccome è l'unico …

    Beh, senza privilegi amministrativi sei molto limitato a quello che puoi fare. Se non ti è permesso di elevarsi o di chiedere privilegi, il modo migliore in cui ho trovato di andare in giro sarebbe quello di creare un altro ambiente, fare un file requirements.txt, scaricare tutti i pacchetti necessari alla tua macchina (django) che avrebbe anche essere collocato nel tuo file di requisiti e dovrebbe funzionare.

    Ho avuto lo stesso problema e questo ha funzionato con me. Prova sudo pip install django

    Aveva lo stesso problema. Nel mio caso il motivo era che l'env virtuale creato era per python2.7 (l'impostazione predefinita) ma stavo usando pip3 per installare un pacchetto. pip3 non era presente nel mio virtualenv in modo da default a quello globale. Per me la soluzione era quella di usare

     virtualenv flask --python=python3 

    per creare l'env.

    Suggerimenti per Linux e Windows Server, quali Ubuntu, Centos, Apache, Nginx, Debian e argomenti di rete.