Traefik 入门
Traefik 是一款云原生的边缘路由器,它可以作为你的应用程序与外界的统一入口。Traefik 会监听你的基础设施组件(如 Docker、Kubernetes、Consul 等),并自动、实时地为你的服务发现并配置正确的路由规则。
ℹ️ 提示
想要评估 Traefik 是否能解决你的需求?查看产品功能对比。
在生产环境使用 Traefik?考虑升级到我们的 API 网关(观看演示视频)。
1. 启动 Traefik
ℹ️ 快速演示
想直接跳过阅读,先跑起来看看?查看 Docker 快速开始、Kubernetes 快速开始 或 Traefik Hub。
以下是启动 Traefik 最简单的方式(详见安装章节):
bash
docker run -d -p 8080:8080 -p 80:80 \
-v $PWD/traefik.yml:/etc/traefik/traefik.yml \
-v /var/run/docker.sock:/var/run/docker.sock \
traefik:v3.7yaml
# traefik.yml
api:
insecure: true
entryPoints:
web:
address: ":80"
providers:
docker: {}ℹ️ 不要在生产环境启用
--api.insecure=true
打开浏览器访问 http://localhost:8080/api/rawdata 或 http://localhost:8080/dashboard/,即可看到 Traefik 的 API 与仪表盘。
2. 部署示例应用
将以下内容保存为 whoami.yml:
yaml
# whoami.yml
services:
whoami:
image: traefik/whoami
labels:
- "traefik.http.routers.whoami.rule=Host(`whoami.localhost`)"然后启动它:
bash
docker-compose -f whoami.yml up -d3. 测试你的设置
bash
curl http://whoami.localhost返回的内容形如:
Hostname: 068c0a29a8b7
IP: 127.0.0.1
IP: ::1
IP: 192.168.147.3
RemoteAddr: 192.168.147.2:56006
GET / HTTP/1.1
Host: whoami.localhost
User-Agent: curl/8.7.1
Accept: */*
Accept-Encoding: gzip
X-Forwarded-For: 192.168.147.1
X-Forwarded-Host: whoami.localhost
X-Forwarded-Port: 80
X-Forwarded-Proto: http
X-Forwarded-Server: 9232cdd4fd6c
X-Real-Ip: 192.168.147.1下一步
- 想要配置 HTTPS?请阅读 TLS 概览 或 ACME 证书解析器。
- 想要应用重定向、限流、认证等?请阅读中间件概览。
- 想要查看 Kubernetes 教程 或 Docker Swarm 教程?
- 想了解完整的安装选项?请阅读配置概览。