Correct façon de commencer docker démon qui écoute sur un port spécifique
Im nouveau à docker et souhaitez démarrer en mode démon écoute à une adresse IP et un port. Dans le la documentation il est dit que cela peut être fait par écrit sudo /usr/bin/docker daemon -H 0.0.0.0:5555
. Il a ensuite dit que je peux la liste de course de conteneurs avec cette commande docker ps
. Si j'essaie de cela, je reçois le message suivant:
Obtenir http:///var/run/docker.sock/v1.20/containers/json?all=1: cadran unix /var/run/docker.chaussette: aucun fichier ou répertoire.
- Êtes-vous essayer de vous connecter à un de TLS démon sans TLS?
- Est votre docker démon et de l'exécution?
Je ne peux pas interagir avec elle. Ive a cherché une solution, mais avec pas de chance. Des suggestions?
P. S. Comment puis-je exécuter ce démon dans le fond? J'ai essayé en ajoutant un & mais Im coincé sur la sortie jusqu'en appuyant sur ctrl+c.
Merci d'avance
- "nohup" est ce que vous êtes recherche pour. Jetez un oeil ici stackoverflow.com/questions/10408816/...
- Le comportement dépend de votre Système d'Exploitation. Quel système d'exploitation utilisez-vous?
- Désolé, j'ai oublié de mentionner que j'utilise Ubuntu 14.04
Vous devez vous connecter pour publier un commentaire.
Sur Ubuntu (16.04 LTS) avec docker-ec (
17.03.1~ce-0~ubuntu-xenial
) effectuez les opérations suivantes pour faire docker écouter un port TCP au lieu de sockets.Ajouter un fichier
/etc/systemd/system/docker.service.d/override.conf
avec le contenu suivant:Ajouter un fichier
/etc/docker/daemon.json
avec le contenu suivantReload (
systemctl daemon-reload
) et redémarrer (systemctl restart docker.service
) docker.Pour référence: https://github.com/moby/moby/issues/25471
EDIT:
Être prudent, de sorte que le démon ne l'écouter port de réseau en ignorant les demandes locales.
Pour faire docker écouter à la fois locaux et distants, modifier démon.json, mais garder le standard de socket unix
Docker démon options de connexion docs
Sur Mac OSX vous feriez exécuter le Panneau de Démarrage du Terminal Application pour voir:
...
maintenant
devrait fonctionner
Sur Linux par exemple Ubuntu précéder de sudo peut être nécessaire.
E. g.
conduira à:
mais
fonctionne.
Voir
https://docs.docker.com/articles/basics/
Pour vérifier si votre panneau de service est en cours d'exécution, vous pouvez appeler
et il doit montrer:
Parfois, votre menu fixe instllation est peut-être corrompu
voir: Docker démon ne pas démarrer ou redémarrer
Cannot connect to the Docker daemon. Is 'docker -d' running on this host?
Cependant, votre suggestion avecsudo service --status-all 2>&1 | grep docker
me donne le résultat attendu. Voici comment j'ai installé docker (je le fais via le script):sudo touch /etc/apt/sources.list.d/docker.list
sudo -u root bash -c "echo 'deb https://apt.dockerproject.org/repo ubuntu-trusty main' >> /etc/apt/sources.list.d/docker.list"
sudo apt-key adv --keyserver hkp://pgp.mit.edu:80 --recv-keys 58118E89F3A912897C070ADBF76221572C52609D
sudo apt-get update
sudo apt-get -y install docker-engine
sudo service docker stop
sudo /usr/bin/docker daemon -H 0.0.0.0:5555&
PS: Comment puis-je faire un saut de ligne dans les commentaires?J'ai trouvé une solution à mon problème. J'ai précisé docker en cours d'exécution sur IP x et le Port y, mais docker, puis seulement à l'écoute de ce socket. J'ai dû ajouter une autre -H drapeau avec la socket unix afin d'écouter les demandes locales:
Ce fil est très utile, donc je voudrais contribuer comment obtenir que cela fonctionne sur Ubuntu
14.04.1 LTS
avec docker1.12.6-cs13
(pourrait travailler avec docker-ce versions tout aussi bien). Lesystemd
approche (également/etc/sysconfig/docker
) n'est pas possible pour cette Ubuntu vintage, le fonctionnaire docker documentation de cette écriture n'a pas de post-guide d'installation pour la fabrication de docker démon écouter sur le réseau à l'aide deupstart
pour Ubuntu14.04.1 LTS
. J'ai trouvé que ci-dessous est une approche qui fonctionne plutôt bien:créer
/etc/default/docker
fichier avec le contenu
DOCKER_OPTS = "-H tcp://MACHINE-IP:2375 -H unix:///var/run/docker.sock"
redémarrer le panneau de service
sudo service docker restart
. Après avoir fait cela, docker démon commencé à l'écoute sur le réseau et le démon journaux regardé propre. Peut-être plus expérimentés menu fixe les utilisateurs peuvent carillon si il ya une meilleure façon.Pour une raison de Phoenix solution a été de me donner l'erreur. J'ai donc trouvé une autre façon-
J'ai édité /etc/sysconfig/docker et changé le paramètre OPTIONS
puis j'ai redémarré le démon docker
et cela a fonctionné.