2017-03-02 1 views
0

J'utilise vagagrant (1.9.1 sur MacOSX Sierra) pour mettre en service la boîte ubuntu/xenial64 sur VirtualBox pour exécuter une application python. Je suis incapable d'activer un environnement de conda en utilisant la commande shell normale source lors de l'approvisionnement. Dans mon bootstrap.sh, j'ai les lignes suivantes pour la création d'un nouvel environnement, puis basculer vers elle.Activer l'environnement anaconda pendant la mise à disposition de shell vargant

#!/usr/bin/env bash 
set -e # Exit script immediately on first error. 
set -x # Print commands and their arguments as they are executed. 

/home/ubuntu/miniconda3/bin/conda create --name envmycondaenvironment python=3.5 # environment with python3.5 
source activate envgatherurls 

Je reçois l'erreur suivante de la part de vagabond.

==> default: + source activate envmycondaenvironment 
==> default: /tmp/vagrant-shell: line 21: activate: No such file or directory 

Pourquoi activate pas trouvés sur le script shell? J'ai vérifié que /home/ubuntu/miniconda3/bin/activate peut être trouvé a été ajouté à PATH dans le fichier .bashrc.

Répondre

1

La commande activate est fournie par conda et n'est pas ajoutée automatiquement à la variable d'environnement PATH. Notez que le script bootstrap.sh s'exécute en tant que root et non en tant qu'utilisateur vagrant. Donc, vous devez vous assurer que le .bashrc pour l'utilisateur root a /home/ubuntu/miniconda3/bin dans son chemin. Si j'étais vous, je devrais plutôt faire ceci:

#!/usr/bin/env bash 
set -e # Exit script immediately on first error. 
set -x # Print commands and their arguments as they are executed. 

export PATH=/home/ubuntu/miniconda3/bin:$PATH 
conda create --name envmycondaenvironment python=3.5 # environment with python3.5 
source activate envgatherurls 
+0

semble avoir fait l'affaire. Merci. – hAcKnRoCk