Andockfenster: verbinden EHOSTUNREACH, wenn ich eine mongo-container

Ich bin neu in docker und ich habe gerade MongoDB und Node.js container.

Erste, das ich gemacht und ausgeführt mongoDB-container.

$ docker run mongo
2016-10-04T07:41:12.864+0000 I CONTROL  [initandlisten] MongoDB starting : pid=1 port=27017 dbpath=/data/db 64-bit host=f3b51681966e
2016-10-04T07:41:12.865+0000 I CONTROL  [initandlisten] db version v3.2.10
2016-10-04T07:41:12.865+0000 I CONTROL  [initandlisten] git version: 79d9b3ab5ce20f51c272b4411202710a082d0317
2016-10-04T07:41:12.865+0000 I CONTROL  [initandlisten] OpenSSL version: OpenSSL 1.0.1t  3 May 2016
2016-10-04T07:41:12.865+0000 I CONTROL  [initandlisten] allocator: tcmalloc
2016-10-04T07:41:12.865+0000 I CONTROL  [initandlisten] modules: none
2016-10-04T07:41:12.865+0000 I CONTROL  [initandlisten] build environment:
2016-10-04T07:41:12.865+0000 I CONTROL  [initandlisten]     distmod: debian81
2016-10-04T07:41:12.865+0000 I CONTROL  [initandlisten]     distarch: x86_64
2016-10-04T07:41:12.865+0000 I CONTROL  [initandlisten]     target_arch: x86_64
2016-10-04T07:41:12.865+0000 I CONTROL  [initandlisten] options: {}
2016-10-04T07:41:12.868+0000 I STORAGE  [initandlisten] wiredtiger_open config: create,cache_size=1G,session_max=20000,eviction=(threads_max=4),config_base=false,statistics=(fast),log=(enabled=true,archive=true,path=journal,compressor=snappy),file_manager=(close_idle_time=100000),checkpoint=(wait=60,log_size=2GB),statistics_log=(wait=0),
2016-10-04T07:41:13.080+0000 I FTDC     [initandlisten] Initializing full-time diagnostic data capture with directory '/data/db/diagnostic.data'
2016-10-04T07:41:13.080+0000 I NETWORK  [HostnameCanonicalizationWorker] Starting hostname canonicalization worker
2016-10-04T07:41:13.145+0000 I NETWORK  [initandlisten] waiting for connections on port 27017

es funktioniert und Es ist gut wie Sie unten sehen.

> docker ps
    CONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS              PORTS               NAMES
    f3b51681966e        mongo               "/entrypoint.sh mongo"   16 hours ago        Up 11 minutes       27017/tcp           drunk_rosalind

Okay, also wenn, wenn ich nodejs-server als docker run <server-name>,
Es gibt folgenden Fehler.

> [email protected].0.0 start /usr/src/app
> node ./bin/www


/usr/src/app/node_modules/mongodb/lib/server.js:242
        process.nextTick(function() { throw err; })
                                      ^
Error: connect EHOSTUNREACH 172.17.0.5:27017
    at Object.exports._errnoException (util.js:1036:11)
    at exports._exceptionWithHostPort (util.js:1059:20)
    at TCPConnectWrap.afterConnect [as oncomplete] (net.js:1080:14)

Meine app.js Quelle ist hier http://pastebin.com/zR3ErQdf.

jemand herausfinden können, was ist das problem?

InformationsquelleAutor | 2016-10-04



One Reply
  1. 0

    Ihre mongo docker-container müssen ordnungsgemäß mit Ihrem server docker-container. Beachten Sie, dass die mongo-container muss den Namen erst seit dem argument --link Referenzen der NAME, nicht das Bild.

    Laufen mongo Andockfenster:

    docker run --name db mongo

    Richtig Referenz-mongo-container als web-server

    docker run --name web --link db:db <server-name>

    Referenz: https://docs.docker.com/engine/userguide/networking/default_network/dockerlinks/#/communication-across-links

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.