docker java7 installation échoue
Je suis en train d'installer java7 via ppa (RUN add-apt-repository ppa:webupd8team/java -y) dans mon menu fixe de l'image, mais il échoue avec ce message d'erreur:
returned a non-zero code: 127
Suivantes sont suggérées pour installer correctement, mais ça ne fonctionne pas. J'ai essayé les deux termes de cae.
RUN apt-get install python-software-properties -y
RUN add-apt-repository ppa:webupd8team/java -y
#RUN add-apt-repository ppa:eugenesan/java -y
RUN apt-get update
RUN apt-get install oracle-java7-installer -y
Voici le journal de sortie:
Step 28 : RUN add-apt-repository ppa:webupd8team/java -y
---> Running in b278761a4209
[91m/bin/sh: 1: add-apt-repository: not found
[0m
Donc...j'ai besoin de savoir où/si cette commande n'existe pas dans un helper lib ou quoi:
add-apt-repository
add-apt-repository semble être une partie de l'python-software-properties installer. Je ne vois pas de réel erreurs dans cette étape, sauf pour ces messages qui pop dans d'autres domaines de la construction. J'ai donc assumer que si je peux résoudre ce problème ladite python étape d'installer en tant que de besoin:
[91mdebconf: unable to initialize frontend: Dialog
debconf: (TERM is not set, so the dialog frontend is not usable.)
debconf: falling back to frontend: Readline
[0m[91mdebconf: unable to initialize frontend: Readline
debconf: (This frontend requires a controlling tty.)
debconf: falling back to frontend: Teletype
[0m[91mdpkg-preconfigure: unable to re-open stdin:
. Comment mettre un terme ou de dialogue? Je pensais que le -a permis à ce
source d'informationauteur Will Lopez
Vous devez vous connecter pour publier un commentaire.
La
-y
dans votreapt-get install
commandes est de direapt-get
à "assumer oui", ce qui n'est pas la même que l'exécution en mode non-interactif.Vous êtes en voyant le "impossible d'initialiser le frontend: boîte de Dialogue" messages parce que Debian est en cours d'exécution
apt-get
en mode interactif. Pour le dire d'exécuter en mode non-interactif, ajoutez cette ligne au début de votre Dockerfile:Maintenant vos commandes seront en cours d'exécution en mode non-interactif, de sorte
apt-get
ne vais pas essayer et pop toutes les boîtes de dialogue.Comme pour votre erreur, vous avez raison,
add-apt-respository
est une partie de lapython-software-properties
. Essayez de mettre votreapt-get update -y
de commande au-dessus de votreapt-get install python-software-properties
de commande.Note, vous aurez besoin de faire deux
apt-get update -y
commandes, l'une avant de commencer (toujours une bonne habitude à prendre) et une fois que vous avez ajouté l'oracle java PPA.apt-get manuel
Docker ENV docs
add-apt-repository
de commande est une partie de software-properties-commune emballage. Installer le logiciel-propriétés-commun, pas de python-software-properties.Ensuite, vous pouvez ajouter le ppa:webupd8team référentiel. Mais il y a encore un problème.
Ensemble de la acceptés-oracle-licence-v1-1 et d'installation de java. Ci-dessous exemple de Dockerfile fonctionnera parfaitement.
J'ai essayé plusieurs choses différentes en vain alors je suis allé avec OpenJDK à la place. Cela m'a passé cette étape et à la prochaine erreur :-).