Docker常用应用之反向代理

1.简介

代理,顾名思义,代替你完成某些事情。

正向代理:例如租房子,你不想去一个个找房子,你可以把需求告诉中介(代理),让他去帮你,对你,中介就是正向代理。

反向代理:你想租房子,你又不想自己和租房子的人沟通,你也可以找中介,让他去帮你,此时中介扮演反向代理的角色,

其实,在第二个例子中,对你租房的人来说,也可以叫做正向代理。不过对人们来说,就像脚是下,天是上一样,这个顺序习惯了,租房---》中介---》房东,所以叫反向代理。在网络服务里,用户---》代理---》服务器也是这么个顺序,代理用户的叫正向代理,代理服务器的叫反向代理。

目前,主流一般用Nginx做反向代理,不过对于不熟悉的人来说,配置代理比较繁琐,因此,有开发者开发了nginxproxymanager提供图像化配置代理,更加友好方便。

2.安装

cd /data/docker
mkdir npm
vi docker-compose.yml
version: '3'
services:
  app:
    image: 'jc21/nginx-proxy-manager:latest'
    restart: unless-stopped
    ports:
      - '80:80'
      - '81:81'
      - '443:443'
    volumes:
      - ./data:/data
      - ./letsencrypt:/etc/letsencrypt
docker-compose up -d
docker-compose ps
docker-compose logs

3.配置使用

3.1.登录并修改用户名和密码

浏览器进入:http://docker-container-host:81

默认用户名/密码:admin@example.com/changeme

3.2.配置好DNS

在设置反向代理之前,应该提前在你的域名服务提供商后台设置好域名,将要重定向的网址解析到NPM所在主机IP,因为我在本地测试,所以修改hosts代替

修改C:\Windows\System32\drivers\etc\hosts,其中的xxx请换成你自己的NPM服务器IP

xxx.xxx.xxx.xxx blog.monkey.com
xxx.xxx.xxx.xxx image.monkey.com

修改完后,ping一下blog.monkey.com,看看指向的是不是配置的服务器IP

3.3.配置反向代理

面板---》Proxy Hosts---》Add Proxy Host

保存后,此时,输入blog.monkey.com进入的就是博客的页面,输入image.monkey.com进入的就是图床的页面。通过反向代理,我们不需要输入端口号了,同时,NPM还提供了自动申请续约SSL证书的功能,很方便的升级你的网站为https。

4.总结

通过反向代理,我们隐藏了服务器的IP,开放的端口等信息,对用户来说,只有一个服务器,就是NPM所在的服务器。多说一句,就像你不知道你租房的房东是谁,你只知道代理。

posted @ 2023-03-16 22:53  monkey6  阅读(415)  评论(0编辑  收藏  举报