Toujours utiliser un environnement virtuel python partout

0

Je suis nouveau sur Ubuntu et virtualthv Python. Depuis que j’ai réalisé l’importance de virtualenv, j’aimerais l’utiliser par défaut chaque fois que j’exécute python (à partir de l’installation de packages) afin de ne pas avoir à s’exécuter à source bin/activatechaque fois.

James Casia
la source

Réponses:

1

si vous utilisez virtualenvpour créer un environnement virtuel, vous devez l' activer ( manuellement ou automatiquement ) en exécutant:

source PATH_TO_MY_ENV/bin/activate

Toutefois, lorsque vous ne souhaitez pas saisir ce texte à chaque fois et que vous souhaitez l'exécuter automatiquement au démarrage de votre ordinateur , vous devez suivre ces trois étapes:

1. Créez un script shell activate_my_env.shet mettez-y la commande mentionnée ci-dessus:

# activate_my_env.sh

source PATH_TO_MY_ENV/bin/activate

2. Ensuite, vous devez modifier les autorisations pour que le activate_my_env.shscript soit exécutable ( chmod +x):

chmod +x /path_to_your_file/activate_my_env.sh

REMARQUE: Dans cette étape, vous pouvez également activer votre environnement sans taper source my_env/bin/activate , mais vous devez néanmoins exécuter votre script avec cette commande:

./activate_my_env

3. Enfin, pour exécuter le script shell automatiquement , vous devez le configurer pour qu'il soit exécuté au démarrage / redémarrage de votre système:

  • A. modifier le fichier de contab :

    crontab -e

  • B. ajoutez la ligne suivante à ce fichier contab:

    @reboot / path_to_you_file / activate_my_env.sh

Redémarrez votre système et votre environnement virtuel devrait être activé automatiquement , après chaque démarrage d'ubuntu .

En savoir plus sur l' exécution du script shell par le démarrage Ubuntu

Behzad Sezar
la source
0

Je pense que le moyen le plus simple est d'installer Anacondaou Miniconda. Il crée un environnement virtuel nommé baseet le rend par défaut. Donc, chaque fois que vous allumez votre terminal, vous aurez baseactivé. Tout ce que vous installez avec conda ou pip sera installé dans le base. Notez maintenant que vous devrez peut-être encore utiliser des environnements virtuels. Par exemple, vous pouvez avoir un projet Django 2.0 et un projet Django 1.0. Ensuite, vous devez conserver 2 environnements virtuels différents (par exemple, venv1et venv2) avec Django 2.0 dans venv2et Django 1.0 dans venv1. Sinon, vous aurez des erreurs de dépendance.

Qazi Fahim Farhan
la source