Docker traefik无法访问我的容器

时间:2018-10-15 18:03:12

标签: docker docker-compose traefik

我想使用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 Host: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

我试图遵循这些教程:

  1. https://www.howtoforge.com/tutorial/ubuntu-docker-traefik-proxy/
  2. https://docs.traefik.io
  3. https://www.digitalocean.com/community/tutorials/how-to-use-traefik-as-a-reverse-proxy-for-docker-containers-on-ubuntu-16-04

能帮我吗?

0 个答案:

没有答案