Я хочу создать контейнер, используя образ php: 5.6-apache и получить к нему доступ, написав в своем URL sample.test.local. Я знаю, как это сделать, обновив файл / ect / hosts, но я хочу знать,если это возможно сделать без изменения файла.Так что я нашел Traefik, где есть много учебных пособий, но это не работает для меня ...
Вот мой docker-compose.yml:
version: '2'
services:
php:
image: php:5.6-apache
ports:
- 80
labels:
- "traefik.frontend.entryPoints=http"
- "traefik.port=80"
- "traefik.frontend.rule=Host:sample.test.local"
- "traefik.frontend.passHostHeader=true"
traefik:
image: traefik # The official Traefik docker image
command: --api --docker # Enables the web UI and tells Træfik to listen to docker
ports:
- "80:80" # The HTTP port
- "8080:8080" # The Web UI (enabled by --api)
volumes:
- /var/run/docker.sock:/var/run/docker.sock
labels:
- "traefik.frontend.rule=Host:test.local"
Вот результатиз curl -H Хост: sample.test.local http://127.0.0.1
<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
<html><head>
<title>403 Forbidden</title>
</head><body>
<h1>Forbidden</h1>
<p>You don't have permission to access /
on this server.<br />
</p>
<hr>
<address>Apache/2.4.25 (Debian) Server at sample.test.local Port 80</address>
</body></html>
Я могу заключить, что он работает хорошо, но когда я пытаюсь получить доступ к sample.test.local, он не может достичь хоста.
Я пытался добавить эту строку в мой файл / etc / host: 127.0.0.1 test.local
Я пытался следовать этим учебным пособиям:
- https://www.howtoforge.com/tutorial/ubuntu-docker-traefik-proxy/
- https://docs.traefik.io
- https://www.digitalocean.com/community/tutorials/how-to-use-traefik-as-a-reverse-proxy-for-docker-containers-on-ubuntu-16-04
Не могли бы вы мне помочь, пожалуйста?