1.效果展示

对于开发来说,工具还是挺齐全的

2.搭建环境

  • 服务器:橙子这边用的Racknerd的高性价比服务器,美国洛杉矶的DC02机房的机子

  • 系统:Ubuntu 20.4 (也可以用Debian)

  • 安装好 Docker、Docker-compose

  • 【非必需但建议】域名一枚,并做好解析到服务器上

  • 【非必需】提前安装好宝塔面板,海外版本 aapanel,并安装好 Nginx环境

  • 【非必需本教程选用】安装好 Nginx Proxy Manager(相关教程

3.搭建过程

docker run -d --name it-tools --restart unless-stopped -p 18080:80 qingfeng2336/it-tools:latest

18080也可以换成其他未被占用的端口
查看端口是否被占用(以 8080 为例),输入:

lsof -i:8080  #查看 8080 端口是否被占用,如果被占用,重新自定义一个端口

COPY
如果啥也没出现,表示端口未被占用,我们可以继续下面的操作了~

如果出现:

-bash: lsof: command not found

COPY
运行:

apt install lsof  #安装 lsof

COPY

如果端口没有被占用(被占用了就修改一下端口,比如改成 8381,注意 docker 命令行里和防火墙都要改)
理论上我们就可以输入 http://ip:18080 访问了。
但是这边我们必须先搞一下反向代理!
做反向代理前,你需要一个域名!
如果想要长期使用,还是建议买 com 后缀的域名,更加正规一些
域名购买教程

我们接着往下看!

4. 反向代理

4.1 利用 Nginx Proxy Manager

在添加反向代理之前,确保你已经完成了域名解析,登陆 Nginx Proxy Manager(不会的看这个:安装 Nginx Proxy Manager(相关教程))添加反向代理,按下面的操作
2023-11-28_202453

2023-11-28_202524

注意:
Nginx Proxy Manager(以下简称 NPM)会用到 80、443 端口,所以本机不能占用(比如原来就有 Nginx),这里的端口因为我们映射的是18080,所以输入18080
如果 Nginx Proxy Manager 和 it-tools 在同一台服务器上,可以在终端输入:

ip addr show docker0

COPY

查看对应的 Docker 容器内部 IP,就不用填服务器ip了。

4.2 利用宝塔面板

发现还是有不少小伙伴习惯用宝塔面板,这边也贴一个宝塔面板的反代配置:
直接新建一个站点,不要数据库,不要 php,纯静态即可。
然后打开下面的配置,修改 Nginx 的配置。
2023-11-28_202054
代码如下:

location / {
      proxy_pass http://127.0.0.1:8090/;       # 注意改成你实际使用的端口
      rewrite ^/(.*)$ /$1 break;
      proxy_redirect off;
      proxy_set_header Host $host;
      proxy_set_header X-Forwarded-Proto $scheme;
      proxy_set_header X-Real-IP $remote_addr;
      proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
      proxy_set_header Upgrade-Insecure-Requests 1;
      proxy_set_header X-Forwarded-Proto https;
    }

COPY

此方法对 90% 的反向代理都能生效,然后就可以用域名来安装访问了。
有同学可能会问,为什么不直接用宝塔自带的反向代理功能。
也可以,不过自己之前遇到过当有多个网站需要反代的时候,出现未知错误的情况
所以后来就不用了,直接用上面的方法来操作了。

最后把你的域名配到你的菜单上,愉快的使用工具箱吧