/ / पोर्ट 3000 के माध्यम से कंटेनर तक पहुंच - ट्रैफिक - ट्रैफिक

पोर्टफिश के माध्यम से बंदरगाह 3000 पर कंटेनर तक पहुंच - traefik

ठीक है, इसलिए मुझे "एक नोड- js ऐप मिला है" जो मुझे ट्रफिक तक पहुंचना पसंद है।

नोड-जेएस ऐप पोर्ट पर चलता है 3000

मैं पीछे चल रहा है test-it आरंभ पृष्ठ से निर्देश।

docker-compose.yml

version: "2"
services:

app:
build:
context: .
dockerfile: docker/app/Dockerfile
environment:
- NODE_ENV=development
- NODE_PORT=3000
volumes:
- ./app:/app
expose:
- "3000"
networks:
- web
labels:
- "traefik.backend=microservice"
- "traefik.backend.port=3000"
- "traefik.port=3000"
- "traefik.frontend.rule=Host:microservice.docker.localhost"
networks:
web:
external:
name: traefik_webgateway

कनेक्ट करने का प्रयास कर रहा है:

curl -H Host:microservice.docker.localhost http://localhost/

खराब गेटवे

curl -H Host:microservice.docker.localhost http://localhost:3000/

कर्ल: (52) सर्वर से खाली उत्तर

परंतु curl -H Host:whoami.docker.localhost http://localhost/ इरादा की तरह काम करता है।

उत्तर:

जवाब के लिए 0 № 1

समस्या यह थी कि मेरा माइक्रोसॉर्स्ट सुनने के लिए बाध्य था localhost:3000 इसके बजाय मैंने इसे बदल दिया 0.0.0.0:3000 और यह एक आकर्षण की तरह काम किया।

हटा दिया - "traefik.backend.port=3000" से ही docker-compose.yml

जोड़ा 127.0.0.1 microservice.docker.localhost सेवा मेरे /etc/hosts

जो मेरे लिए सक्षम है:

curl http://microservice.docker.localhost/ और मुझे वह प्रतिक्रिया मिल रही है जिसकी मुझे उम्मीद थी

मैं एक microservice हूँ!