代码改变生活,程序改变世界|

老酒学IT

园龄:3年1个月粉丝:8关注:2

阿里云+Nginx Proxy Manager 设置二级域名

这里我们以购买阿里云的域名为例

有域名的作用:当我们在浏览器上面访问主机的某一个端口时,必须输入主机ip+端口号,这就会非常的麻烦,而且也会暴露出我们的主机名,很不安全,因此域名的好处就是可以将我们的主机ip和端口号给隐藏起来。

如www.baidu.com其代表百度的服务器ip:8080

1.购买阿里云域名

建议购买.com或者.cn后缀的域名

由于这一步比较简单,可以跳过,登录阿里云,购买自己喜欢的服务器即可。

2.主机ip绑定域名

是将主机的ip绑定到指定的域名上面

步骤

第一步:选择域名

image-20230110184737697

第二步:点击域名列表,然后在点击我们指定域名的解析

image-20230110184916999

第三步:点击添加记录

此时我们绑定的只是一个宿主机的ip,没有绑定特定的端口,所以去浏览器上面直接搜索该域名是搜索不出来的。

3.检测域名是否绑定成功

第一步:打开一个linux客户端或者windows命令行

image-20230110192455862

4.使用域名访问特定的端口

如我们想使用这个域名访问我们自己的博客,我们博客开放的端口是8080,那如何在浏览器上面访问呢?

格式:
域名:8080
-
例如:
www.laojiuxueit.cn:8080

这时我们也会有一个问题,就是我们的8080端口并没有被域名隐藏起来,那该如何办呢?

解决方法:

第一步:

​ 在我们域名的基础上创建一个二级域名

第二步:

​ 使用nginx反向代理,将该二级域名绑定到我们8080端口,实际上就是绑定到ip:端口这一个整体。

5.创建一个二级域名

第一步:点击域名

image-20230110194522490

第二步:选择域名列表

第二步

image-20230110194609110

第三步:添加记录

image-20230110194648484

第四步:设置二级域名参数

image-20230110194940853

域名:test.laojiuxueit.cn

到这里二级域名已经创建完成

第五步:测试二级域名是否能使用

测试一下二级域名能不能使用

image-20230110195255068

6.nginx反向代理

我们需要安装Nginx Proxy Manager

在安装Nginx Proxy Manager之前我们需要先安装docker和docker-compse。

docker的安装和docker-compse安装,大家去网上自行安利即可。

image-20211206175320893

1.理解代理

代理就是第三方。

什么是正向代理

你要买国外小G家的鞋子,你没有paypal和信用卡,买不了,于是你找到了叫小V的代购帮你到海外买,小V找到海外的卖家小G,帮你买了鞋子,然后寄回给了你。

这个小V就是正向代理。

正向代理的特点是,可以保护访问者的信息。因为小V是个职业代购,他在帮你代购鞋子的同时也帮别人代购鞋子,而且他不仅代购鞋子,还代购箱子、家具、电饭煲,卖家小G只知道有人买了我的鞋子,我交给了小V,但并不知道具体是谁买了他家的鞋子。

什么是反向代理

反向代理,顾名思义,正好相反,可以保护卖家的信息。也就是我们服务器的信息

https://nginxproxymanager.com/

2.安装

我们可以在自己绑定域名的主机上面安装,也可以做其他其他主机上面安装

1.创建安装目录

mkdir -p /root/data/docker_data/npm
-
cd /root/data/docker_data/npm

2.编写docker-compse.yml文件

vim docker-compose.yml
version: "3"
services:
app:
image: 'jc21/nginx-proxy-manager:latest'
restart: unless-stopped
ports:
- '80:80' # Public HTTP Port
- '443:443' # Public HTTPS Port
- '81:81' # Admin Web Port
Add any other Stream port you want to expose(注释掉)
- '21:21' # FTP(注释掉)
environment:
DB_MYSQL_HOST: "db"
DB_MYSQL_PORT: 3306
DB_MYSQL_USER: "npm"
DB_MYSQL_PASSWORD: "npm"
DB_MYSQL_NAME: "npm"
Uncomment this if IPv6 is not enabled on your host(注释掉)
DISABLE_IPV6: 'true'(注释掉)
volumes:
- ./data:/data
- ./letsencrypt:/etc/letsencrypt
depends_on:
- db
db:
image: 'jc21/mariadb-aria:latest'
restart: unless-stopped
environment:
MYSQL_ROOT_PASSWORD: 'npm'
MYSQL_DATABASE: 'npm'
MYSQL_USER: 'npm'
MYSQL_PASSWORD: 'npm'
volumes:
- ./data/mysql:/var/lib/mysql
line 18, column 7
in "./docker-compose.yml", line 19, column 1

3.创建容器

cd /root/data/docker_data/npm # 来到 dockercompose 文件所在的文件夹下
-
docker-compose up -d

4.web访问

宿主机ip:81
#默认登录名和密码
Email: admin@example.com
Password: changeme

5.更新

cd /root/data/docker_data/npm
docker-compose down
cp -r /root/data/docker_data/npm /root/data/docker_data/npm.archive # 万事先备份,以防万一
docker-compose pull
docker-compose up -d # 请不要使用 docker-compose stop 来停止容器,因为这么做需要额外的时间等待容器停止;docker-compose up -d 直接升级容器时会自动停止并立刻重建新的容器,完全没有必要浪费那些时间。
docker image prune # prune 命令用来删除不再使用的 docker 对象。删除所有未被 tag 标记和未被容器使用的镜像

6.卸载

cd /root/data/docker_data/npm
docker-compose down
rm -rf /root/data/docker_data/npm # 完全删除映射到本地的数据

3.将二级域名绑定到主机ip的某个端口上

第一步:在浏览器上面输入启动docker compose的主机IP:81

默认账户

Email: admin@example.com
Password: changeme

做一下基本的配置,如果修改密码,用户名等,此处省略

第二步:绑定二级域名

image-20230110203250069

image-20230110203340960

设置二级域名

image-20230110203545128

image-20230110203826735

第三步:设置ssl秘钥

我们访问这个域名的时候会发现,我们的左上角会显示不安全的一个三角形,我们要解决这个问题所以我们要弄一个ssL。

image-20230110203958807

image-20230110204100012

之后选择Edit

在这里插入图片描述

到这里就已经完工了,此时我们就将ip:8080这个程序绑定到了一个特定的域名上面(二级域名

补充

在这里插入图片描述

写本机的docker网路ip的话就可以防止别人用,但是如果使用别的主机的话,就必须使用主机公网ip了。

本文作者:老酒学IT

本文链接:https://www.cnblogs.com/LaoJiuXueIt/p/17476632.html

版权声明:本作品采用知识共享署名-非商业性使用-禁止演绎 2.5 中国大陆许可协议进行许可。

posted @   老酒学IT  阅读(896)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
//替换成自己路径的js文件

喜欢请打赏

扫描二维码打赏

支付宝打赏

点击右上角即可分享
微信分享提示
评论
收藏
关注
推荐
深色
回顶
收起