侧边栏壁纸
博主头像
跳出箱子 博主等级

跳出固有的思维框架,以创新或不同的视角来解决问题

  • 累计撰写 9 篇文章
  • 累计创建 22 个标签
  • 累计收到 1 条评论

目 录CONTENT

文章目录

【Docker趣玩集】零基础也能搭建超好用的IT工具箱!站长推荐

ali
ali
2025-01-10 / 0 评论 / 0 点赞 / 11 阅读 / 0 字

1.前言

推荐一个IT工具箱 – 开发者日常必备工具集

这是一个为开发者、系统管理员和IT爱好者设计的综合性工具集合。它提供了一系列实用的在线工具,旨在简化日常任务,提高工作效率。

主要特点:

  • 完全开源

  • 基于Web的界面,易于使用

  • 不需要安装,随时随地可用

  • 持续更新和维护

  • 工具类别:JSON工具、格式化转换、加解密编码、文本数字、网络、计算等等。

2. 项目展示


3. 相关地址

https://hub.docker.com/r/cleverest/toolbox

4. 搭建环境

  • 服务器:香港腾讯云轻量应用服务器

  • 系统:Debian 10 或以上。 DD 脚本 非必需 DD,用原来的系统也 OK,之后教程都是用 Debian 或者 Ubuntu 搭建~)

  • docker 环境(具体看这篇:Docker安装配置

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

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

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

服务器建议:1C1G,能搭建docker即可

5. 搭建方式

5.1 安装 Docker 与 Nginx Proxy Manager

可以直接参考这篇内容:

https://blog.souldebug.com/archives/nginx-proxy-manager

5.2 docker一键部署

运行下面指令,一键部署:

设置用户名密码

  • username:用户名(默认值:admin)

  • password:密码(默认值:admin)

后台管理地址:http://ip:8080/admin

docker run -d --restart always \
  --name tools \
  -p 8080:80 \
  -e username=admin \
  -e password=admin \
  cleverest/toolbox

5.3 docker compose一键部署

创建一下安装的目录:

sudo -i

mkdir -p /root/data/docker_data/toolbox

cd /root/data/docker_data/toolbox

接着我们来编辑下docker-compose.yml

vim docker-compose.yml
version: '3'

services:
  toolbox:
    image: cleverest/toolbox
    container_name: toolbox
    ports:
      - "8080:80"
    environment:
      - username=admin
      - password=admin
    restart: unless-stopped

8082可以改成服务器上没有用过的端口,修改完成之后,可以在英文输入法下,按 i 修改,完成之后,按一下 esc,然后 :wq 保存退出。

5.4 打开服务器防火墙(非必需)并访问网页

打开防火墙的端口 8080

举例,腾讯云打开方法如下(部分服务商没有自带的面板防火墙,就不用这步操作了):

这边我们填 8080,备注填 tools-box ,确定即可(如果你在 docker-compose 文件里换了 9009,这边就需要填 9009,以此类推)

查看端口是否被占用(以 8080 为例),输入:

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

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

如果出现:

-bash: lsof: command not found

运行:

apt install lsof  #安装 lsof

如果端口没有被占用(被占用了就修改一下端口,比如改成 8081,注意 docker 命令行里和防火墙都要改)

然后输入启动服务:

docker-compose up -d

理论上我们就可以输入 http://ip:8080 访问了。

6. 反向代理

6.1 利用 Nginx Proxy Manager

在添加反向代理之前,确保你已经完成了域名解析,不会的可以看这个:域名一枚,并做好解析到服务器上

之后,登陆 Nginx Proxy Manager(不会的看这个:安装 Nginx Proxy Manager相关教程))

注意:

Nginx Proxy Manager(以下简称 NPM)会用到 80443 端口,所以本机不能占用(比如原来就有 Nginx)

直接丢几张图:

注意填写对应的 域名IP端口,按文章来的话,应该是 8080

IP 填写:

如果 Nginx Proxy Manager 和 tools-box 在同一台服务器上,可以在终端输入:

ip addr show docker0

查看对应的 Docker 容器内部 IP。

否则直接填 tools-box 所在的服务器 IP 就行。

7.2 利用宝塔面板

发现还是有不少小伙伴习惯用宝塔面板,这边也贴一个宝塔面板的反代配置:

直接新建一个站点,不要数据库,不要 php,纯静态即可。

然后打开下面的配置,修改 Nginx 的配置。

image-20220819150345725

然后加入下面这段配置,配置如下:

    location / {
      proxy_pass http://127.0.0.1:8080/;       # 注意改成你实际使用的IP和端口
      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;
    }

此方法对 90% 的反向代理都能生效,然后就可以用域名来安装访问了。

有同学可能会问,为什么不直接用宝塔自带的反向代理功能。

image-20220819150730128

也可以,不过我自己之前遇到过当有多个网站需要反代的时候,在这边设置会报错的情况 。

所以后来就不用了,直接用上面的方法来操作了。

喜欢就支持一下吧!!!

0

评论区