Я пытаюсь использовать обратный прокси Træfɪk с некоторыми контейнерами докеров.Простая установка прокси-сервера Træfɪk
Вот мой Træfɪk докер-compose.yml:
version: '2'
services:
traefik:
image: traefik
command: --web --docker --docker.domain=my-domain.net --logLevel=DEBUG
ports:
- "80:80"
- "8080:8080"
volumes:
- /var/run/docker.sock:/var/run/docker.sock
- /dev/null:/traefik.toml
Вот докер-compose.yml веб-часть моих услугах:
version: '2'
services:
# [...]
web:
build: . # An nginx based image
container_name: my_app_web
volumes:
- ..:/app/
depends_on:
- db
- redis
labels:
- "traefik.backend=my_app"
- "traefik.frontend.rule=Host:my-domain.net"
- "traefik.port=80"
Запуск все эти вещи, Я вижу свой интерфейс/бэкэнд, созданный на веб-интерфейсе Træfɪk, но я не могу получить доступ к своему приложению my-domain.net.
$ curl -H Host:my-domain.net http://127.0.0.1
# ... after ±30s.
Gateway Timeout
Træfɪk войти:
экспедиторская Ошибка в http://172.18.0.4:80, эээ: набрать ТСР 172.18.0.4:80: I/O Таймаут
я могу получить доступ к приложению от его локальный IP хотя (172.18.0.4
), и он работает нормально.
Я, конечно, забываю что-то здесь, любую помощь?
Дополнительная информация:
- Официальный
emilevauge/whoami
работает нормально в отдельном Докер-Compose файл. - Моя служба работает нормально без Træfɪk (путем сопоставления порт 80)
Не могли бы вы предоставить файл Docker для своего веб-приложения и полный фрагмент вашего docker-compose.yml? –
Вы используете некоторые из контейнеров в нескольких сетях? то вы также должны добавить метку, в которой сетевой трейфик должен искать контейнер. В противном случае вы также увидите некоторые тайм-ауты шлюза. Пожалуйста, предоставьте полный файл. –