通过Nginx Proxy Manager反向代理去掉域名后面的端口

from:科技玩家

背景:

在一个主机下创建了多个docker,域名只能访问80端口,要想访问其他的docker只能在域名后面加端口号,通过Nginx Proxy Manager反向代理的方法,一个域名一个公网IP一个端口对应一个二级域名即可巧妙去掉端口

准备工作:

1.一个域名(可以在 freenom 申请一个免费的域名)
2.一个 cloudflare 账号
3.一台具有公网ip的主机

一、将域名解析到自己的公网IP

步骤概要:

  1. 注册一个Cloudflare账号;
  2. 添加你的网站到Cloudflare中,获取Cloudflare的域名解析服务器(NS);
  3. 前往你的域名注册网站,修改域名解析服务器(NS)为Cloudflare的,Cloudflare会自动获取已有的解析记录,但有时候也会获取不全,你需要人工检查一下。
  4. 按需在Cloudflare中添加网站解析记录,常用的解析记录是A记录,用于将域名指向网站的服务器IP

二、Docker安装nginx proxy manager

项目地址:https://github.com/NginxProxyManager/nginx-proxy-manager?utm_source=nginx-proxy-manager

1.安装docker-compose

#国外鸡sudo curl -L https://github.com/docker/compose/releases/download/1.16.1/docker-compose-`uname -s`-`uname -m` -o /usr/local/bin/docker-compose
#国内鸡sudo curl -L https://get.daocloud.io/docker/compose/releases/download/1.25.1/docker-compose-`uname -s`-`uname -m` -o /usr/local/bin/docker-compose
#添加可执行权限sudo chmod +x /usr/local/bin/docker-compose
#测试安装结果$ docker-compose --version

2.根据GitHub文档安装

  1. 在主机新建一个文件夹
  2. 在文件夹内新建 docker-compose.yml 文件,填入以下代码
    1. version: ‘3’
    2. services:
    3. app:
    4. image: ‘jc21/nginx-proxy-manager:latest’
    5. restart: unless-stopped
    6. ports:
    7. – ’80:80′
    8. – ’81:81′
    9. – ‘443:443’
    10. volumes:
    11. – ./data:/data
    12. – ./letsencrypt:/etc/letsencrypt
  3. cd到文件所在位置,执行
docker-compose up -d

3.进入nginx proxy manager后台

后台地址:ip:81

#初始账号密码Email:    admin@example.com
             Password: changeme

4.简单设置一下

5.完结撒花

可以自行百度安装证书用上https


已发布

分类

来自

标签:

评论

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注