2017-06-27 4 views
0

à partir de mes scripts de noeud Je dois exécuter mongoimport via la fonction exec de child_process. En ce qui concerne les tests de CI dans l'image docker je rencontre un problème:Installation de mongoimport dans une image de docker

/bin/sh: 1: mongoimport: not found

J'inséré l'installation de MongoDB dans le fichier drone.yml:

- apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv EA312927 
- echo "deb http://repo.mongodb.org/apt/debian jessie/mongodb-org/3.2 main" | tee /etc/apt/sources.list.d/mongodb-org-3.2.list 
- apt-get update 
- apt-get install -d -y mongodb-org-tools 

Mais encore mongoimport n'est pas trouvé. J'ai même ajouté la racine / à la variable PATH ou fait une

find/-name "mongoimport" 

Rien.

Quelqu'un at-il une idée, comment faire fonctionner mongoimport dans l'image de docker?

Merci.

PS .: Voici la sortie de apt-get:

$ apt-get install -d -y mongodb-org-tools 
Reading package lists... 
Building dependency tree... 
Reading state information... 
The following NEW packages will be installed: 
mongodb-org-tools 
0 upgraded, 1 newly installed, 0 to remove and 102 not upgraded. 
Need to get 31.4 MB of archives. 
After this operation, 135 MB of additional disk space will be used. 
Get:1 http://repo.mongodb.org/apt/debian/ jessie/mongodb-org/3.2/main mongodb-org-tools amd64 3.2.14 [31.4 MB] 
Fetched 31.4 MB in 1s (28.2 MB/s) 
Download complete and in download only mode 
+0

Quelle est l'image de Docker que vous utilisez ici? –

+0

'image: noeud: dernier' –

Répondre

0

Résolu: J'ai essayé d'installer le mauvais paquet.

- apt-get install -d -y mongodb-org-tools 

Il doit être

- apt-get install -y mongodb-org 

ensuite automatiquement les outils MongoDB-org-sont installés en même temps que d'autres paquets. Maintenant mongoimport peut être utilisé

$ find/-name "mongoimport" -ls > out.txt 
$ cat out.txt 
2038 10588 -rwxr-xr-x 1 root  root  10839312 Jun 13 22:30 /usr/bin/mongoimport