单机Docker如何实现 Traefik 反向代理-负载均衡

发布时间:2020-04-21 11:28:41 作者:三月
来源:亿速云 阅读:541

下文给大家带来单机Docker如何实现 Traefik 反向代理-负载均衡,希望能够给大家在实际运用中带来一定的帮助,负载均衡涉及的东西比较多,理论也不多,网上有很多书籍,今天我们就用亿速云在行业内累计的经验做一个解答。


一、创建Traefik和容器应用的连接网络

sudo docker network create traefik-net


二、下载Traefik样本配置文件

wget https://raw.githubusercontent.com/containous/traefik/master/traefik.sample.toml

单机Docker如何实现 Traefik 反向代理-负载均衡

三、编辑Traefik配置文件

sudo cp ./traefik.sample.toml ./traefik.toml

sudo vi ./traefik.toml


编辑traefik.toml文件内容:


debug = false

logLevel = "ERROR"

defaultEntryPoints = ["http"]


[entryPoints]

  [entryPoints.http]

  address = ":80"


[retry]


[docker]

endpoint = "unix:///var/run/docker.sock"

domain = "docker.localhost"

watch = true

exposedByDefault = false

usebindportip = true

swarmMode = false

network = "traefik-net"


四、在主机上运行Traefik反向代理容器


Docker运行 Traefik 命令:


docker run -d \

--name traefik \

-p 8080:8080 \

-p 80:80 \

-v $PWD/traefik.toml:/etc/traefik/traefik.toml \

-v  /var/run/docker.sock:/var/run/docker.sock \

traefik



五、运行Docker容器应用

运行 Docker 容器应用web1:

docker run -d \

--name nginx \

--label "traefik.backend=nginx" \

--label "traefik.protocol=http" \

--label "traefik.port=80" \

--label "traefik.docker.network=traefik-net" \

--label "traefik.domain=abc.com" \

--label "traefik.frontend.rule=Host:web1.abc.com" \

--label "traefik.enable=true" \

nginx


运行 Docker 容器应用web2:

docker run -d \

--name httpd \

--label "traefik.backend=httpd" \

--label "traefik.protocol=http" \

--label "traefik.port=80" \

--label "traefik.docker.network=traefik-net" \

--label "traefik.domain=abc.com" \

--label "traefik.frontend.rule=Host:web2.abc.com" \

--label "traefik.enable=true" \

httpd


六、配置客户端 hosts 主机文件,通过浏览器访问容器应用

修改 Win7 客户端电脑上 C:\Windows\System32\drivers\etc\hosts文件:

192.168.3.168  web1.abc.com

192.168.3.168  web2.abc.com


通过客户端电脑上的浏览器访问容器应用

http://web1.abc.com

http://web2.abc.com


七、查看Traefik管理后台

http://192.168.3.168:8080


注意事项:运行容器应用时,--label 中,等号左右不能有空格!


附图:

00-traefik.toml配置文件

单机Docker如何实现 Traefik 反向代理-负载均衡

01-运行 Traefik容器

单机Docker如何实现 Traefik 反向代理-负载均衡

02-运行 web1 和 web2 容器应用

单机Docker如何实现 Traefik 反向代理-负载均衡

03-运行中的容器

单机Docker如何实现 Traefik 反向代理-负载均衡

04-Traefik 管理后台

单机Docker如何实现 Traefik 反向代理-负载均衡

05-Traefik 管理后台2

单机Docker如何实现 Traefik 反向代理-负载均衡

06-通过web1.abc.com访问网站

单机Docker如何实现 Traefik 反向代理-负载均衡

07-通过web2.abc.com访问网站

单机Docker如何实现 Traefik 反向代理-负载均衡

看了以上关于单机Docker如何实现 Traefik 反向代理-负载均衡,如果大家还有什么地方需要了解的可以在亿速云行业资讯里查找自己感兴趣的或者找我们的专业技术工程师解答的,亿速云技术工程师在行业内拥有十几年的经验了。

 

 



推荐阅读:
  1. 解释下Nginx反向代理是怎样实现负载均衡的?
  2. 微服务五种开源API网关实现组件对比

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

traefik docker 反向代理

上一篇:c语言goto语句怎么用

下一篇:c语言中#define的作用是什么?怎么用?

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》