Maison  >  Questions et réponses  >  le corps du texte

Comment se connecter une fois le lien Docker exécuté ?

Je souhaite utiliser le conteneur MySQL, créez le conteneur selon la description sur hub

docker run --name mysql -e MYSQL_ROOT_PASSWORD=123456 -d mysql:8

docker run -d --name nx --link mysql:db nginx

La connexion échoue lors de l'utilisation directe du conteneur de base

~# docker ps
CONTAINER ID        IMAGE                    COMMAND                  CREATED              STATUS              PORTS                                            NAMES
bf673d61f789        nginx                    "nginx -g 'daemon ..."   3 seconds ago        Up 2 seconds        80/tcp, 443/tcp                                  nx
1ac01c685e9b        mysql:8                  "docker-entrypoint..."   About a minute ago   Up About a minute   3306/tcp                                         mysql

Impossible d'accéder à localhost:3306 dans nginx

Utilisez la commande
docker inspect -f "{{ .HostConfig.Links }}" proxydocker inspect -f "{{ .HostConfig.Links }}" proxy
[/mysql:/nx/db][/mysql:/nx/db]
pour voir que la connexion est un succès
nginx héberge en

127.0.0.1       localhost
::1     localhost ip6-localhost ip6-loopback
fe00::0 ip6-localnet
ff00::0 ip6-mcastprefix
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters
172.17.0.4      db 1ac01c685e9b mysql
172.17.0.6      8242073e142b

Cela semble un peu aléatoire,

Très différent du localhost :3306 auquel je m'attendais

Existe-t-il un moyen d'utiliser localhost:3306 après la connexion ?

天蓬老师天蓬老师2663 Il y a quelques jours823

répondre à tous(1)je répondrai

  • 世界只因有你

    世界只因有你2017-06-07 09:25:31

    Link consiste à établir un lien réseau entre deux conteneurs, et non à fusionner les ports réseau des deux conteneurs ensemble ! !
    Activez l'accèslocalhost:3306换成访问db:3306 pour accéder avec succès au service de base de données

    répondre
    0
  • Annulerrépondre