2017-04-19 1 views
2

Website öffnen. Ich habe docker-compose mit nodejs.kann nicht mit docker-compose und nodejs

web: 
... 
    ports: 
    - "3030:3000" 
.... 

app.js:

... 
server.listen(8000, function(){ 
    console.log('test'); 
}); 

können wir Port ist 8000.

ich docker-compose up und Terminal hat 'test'

Aber http://MY_IP:8000 hat nicht „sehen nicht Zugangsstelle“

ich mitstarten SieServer gestartet, aber ich bekomme dieser Fehler auch.

Wie starten NodeJS mit Docker-komponieren?

P. S .: Wenn ich npm OHNE Docker-compose Befehl installieren installieren. Ich habe dieses Problem nicht

Antwort

0

In Ihrem docker-compose.yml Sie sagen den Port 3030 an Ihren Gastgeber und 3000 in Ihrem Container zu binden.

Die config in Ihrem docker-compose.yml sein sollte:

web: 
... 
    ports: 
    - "8000:8000" 
... 

Außerdem denke ich, Sie auch Ihre App im Inneren des Behälters zu 0.0.0.0 binden sollte die Produktion einmal getan werden kann, bewegen Entwicklung, zusätzliche Set-up zu erleichtern. app.js:

server.listen('8000', '0.0.0.0', function(){ 
    console.log('test'); 
}); 
0

Sie konnten auf http://YOUR_IP:8000 nicht zugreifen, da Sie Container-Port (8000) nicht an Host-Port (8000) gebunden haben. Fügen Sie dieses zu Ihrem docker-compose.yml hinzu.

web: 
... 
    ports: 
    - "3030:3000" 
    - "8000:8000" 
.... 
0

einfach ändern - "3030: 3000" zu - "8000: 8000" in Ihrer Docker-compose.yml Datei

Verwandte Themen