欢迎光临
我们一直在努力

Pic Smaller 本地部署:压缩图片、转换格式,再搭建自己的 Web 工具

Pic Smaller 本地部署:压缩图片、转换格式,再搭建自己的 Web 工具

前言

图片体积这件事,平时不太容易注意,真正碰到限制时才会变得麻烦。

做 PPT 时,一份文件因为几张原图迅速涨到几十 MB;网页里放了高分辨率素材,打开速度明显变慢;临时发邮件、传社交平台,又遇到大小限制。很多时候并不需要重新修图,只是希望把文件缩小一些,同时尽量保留原来的观感。

在这里插入图片描述

Pic Smaller 就是围绕这一步来做的开源图片压缩工具。它可以直接在网页中处理图片,也可以自己把项目部署到本机或服务器。本文先从本地使用体验开始,再实际完成 Node.js 环境部署、源码运行和 Docker 启动;如果后续还希望从其他网络访问自己部署的页面,再通过 cpolar 增加公网入口。

整篇关注的是一个很具体的使用链路:图片怎么压、项目怎么自己跑起来、需要外部访问时再怎么继续。

image-20260114160417969

1.Pic Smaller是什么?

Pic Smaller是一款完全免费、无需安装、无需注册的在线图片压缩工具。它的使用逻辑比较直接:把图片拖入页面,完成压缩后再下载结果,不需要先学习复杂参数。

主要能力:

  • 压缩处理:上传图片后直接进行压缩,适合临时缩小文件体积
  • 尽量保留画面细节:压缩的目标是在文件变小的同时尽可能减少肉眼可见的画质变化
  • 支持多格式:JPEG、PNG、WebP等主流图片格式均可处理
  • 隐私说明:原文说明压缩过程由浏览器或服务端自动完成,图片不会被存储或泄露,实际使用时仍建议结合项目说明和隐私政策确认
  • 操作步骤少:打开网页 → 拖入图片 → 下载结果

比较常见的使用场景:

  • 微信/小红书/微博等平台发布前缩小图片体积
  • 制作PPT、简历、PDF时控制文件大小
  • 网站开发时压缩图片素材,减少页面加载负担
  • 邮件或聊天发送图片前进行简单处理

如果只是临时压几张图片,在线版已经够用;如果希望长期使用、自己维护,或者部署在 NAS / 家庭服务器上,再继续看下面的本地部署部分。

2.在本地部署Pic Smaller

2.1部署前提

安装Node.js:

  • 访问Node.js官网:
  • 下载推荐版本。
  • 按照电脑上的步骤完成安装。
  • 要验证安装情况,打开命令提示符并执行以下命令。如果输出了版本,说明你成功安装了Node.js。
  • node -v

    image-20260114154252664

    2.2开始部署

    从GitHub克隆项目源码:

    git clone https://github.com/joye61/pic-smaller.git

    image-20260114154338553

    切换到当前工作目录:

    cd ./pic-smaller

    安装项目依赖:

    npm install

    image-20260114154511203

    启动开发模式:

    npm run dev

    image-20260114154521317

    可以根据上面网址打开网站:

    image-20260114154601762

    页面能够正常打开,说明当前开发模式已经启动成功。

    如果你想在自己的服务器上独立部署这个项目,也可以使用docker一键部署:

    docker build -t picsmaller .

    docker run -p 3001:3001 -d picsmaller

    2.3简单使用Pic Smaller

    本地页面启动后,可以直接拖入图片进行压缩。这里先观察文件体积变化,再结合图片内容判断压缩后的清晰度是否满足实际用途。

    image-20260114155723233

    除了压缩本身,项目还支持不同图片格式处理,支持JPG、JPEG、PNG、WEBP、GIF、SVG、AVIF格式图片压缩。

    压缩时也可以选择输出图片格式。

    image-20260114155751849

    原文说明所有操作均在本地浏览器完成,绝不上传服务器。压缩完成后可以直接下载处理结果。对于比较在意隐私的图片,这一点也是本地部署方案更值得关注的原因之一。

    image-20260114155908759

    本地部署完成以后,Pic Smaller 默认还是本机或局域网服务。如果只在当前电脑、家里或公司内网使用,到这里已经可以结束配置。

    如果希望把它放在 NAS 或家庭服务器上,并让其他网络中的设备也能访问,再继续处理公网这一层。下面使用 cpolar 为当前服务增加外部访问入口,Pic Smaller 本身的压缩流程和项目配置不需要因此改变。

    3.安装cpolar补充公网访问

    前面的 Pic Smaller 已经能够在本地运行,这一部分只解决“其他网络能不能打开这个页面”的问题。

    cpolar 用来把本地正在运行的服务映射为公网访问地址。开始之前,先确认本地页面本身能够正常打开,这样后续如果公网访问异常,更容易判断问题出在哪一层。

    以下继续按照原有安装步骤配置 cpolar:

    使用一键脚本安装命令:

    sudo curl https://get.cpolar.sh | sh

    image-20250904163025898

    安装完成后,执行下方命令查看cpolar服务状态:(如图所示即为正常启动)

    sudo systemctl status cpolar

    image-20250904163041447

    Cpolar安装和成功启动服务后,在浏览器上输入虚拟机主机IP加9200端口即:【http://localhost:9200】访问Cpolar管理界面,使用Cpolar官网注册的账号登录,登录后即可看到cpolar web 配置界面,接下来在web 界面配置即可:

    打开浏览器访问本地9200端口,使用cpolar账户密码登录即可,登录后即可对隧道进行管理。

    image-20250904163105918

    4.配置公网地址

    登录cpolar web UI管理界面后,点击左侧仪表盘的隧道管理——创建隧道:

    • 隧道名称:可自定义,本例使用了:pic,注意不要与已有的隧道名称重复

    • 协议:http

    • 本地地址:3000

    • 域名类型:随机域名

    • 地区:选择China Top

    image-20260114164347595

    创建成功后,打开左侧在线隧道列表,可以看到刚刚生成的公网地址。此时可以换到其他网络中的电脑或移动设备进行一次访问测试。

    image-20260114164436654

    页面能够正常打开,说明当前公网地址已经可以访问本地部署的 Pic Smaller 页面。

    image-20260114164536657

    5.保留固定公网地址

    使用cpolar为其配置二级子域名,该地址为固定地址,不会随机变化。

    image-20250905102542839

    点击左侧的预留,选择保留二级子域名,地区选择china Top,然后设置一个二级子域名名称,我这里演示使用的是picc,大家可以自定义。填写备注信息,点击保留。

    image-20260114164938850

    登录cpolar web UI管理界面,点击左侧仪表盘的隧道管理——隧道列表,找到所要配置的隧道picc,点击右侧的编辑。

    image-20260114165118696

    修改隧道信息,将保留成功的二级子域名配置到隧道中

    • 域名类型:选择二级子域名
    • Sub Domain:填写保留成功的二级子域名
    • 地区: China Top

    点击更新

    image-20260114165154081

    更新完成后,打开在线隧道列表,此时可以看到随机的公网地址已经发生变化,地址名称也变成了保留和固定的二级子域名名称。

    image-20260114170224557

    最后,再使用配置后的固定公网地址访问一次。页面能够正常打开,说明二级子域名已经绑定到当前隧道,后续可以继续使用这个固定入口,而不必依赖前面的随机地址。

    image-20260114170630694

    总结

    Pic Smaller 解决的是一个很具体的问题:当原图体积偏大时,先在不改变使用场景的前提下把文件压小,再决定是否需要进一步处理。

    如果只是偶尔压图,直接使用在线页面最省事;如果希望自己掌控运行环境,可以按照本文的 Node.js 流程启动源码,也可以使用 Docker 部署。项目本地运行以后,压缩、格式转换和下载都仍然围绕同一个 Web 页面完成。

    需要注意的是,本地部署和公网访问是两件不同的事。Pic Smaller 负责图片处理,cpolar 只负责把本地页面增加到局域网之外的访问路径。如果没有异地访问需求,完全没必要继续配置公网入口;如果准备长期从外部访问,再使用固定二级子域名减少地址变化带来的麻烦。

    所以整套流程其实可以按需求停在不同阶段:

    • 只想临时压图:直接使用在线版;
    • 想自己运行:部署本地版;
    • 想让其他网络访问:再增加公网入口。

    比起强调“压得多小”或者“绝对无损”,实际使用时更值得关注的是两件事:压缩后的清晰度是否满足当前用途,以及处理方式是否符合自己对隐私和部署位置的要求。

    赞(0)
    未经允许不得转载:171主机测评 » Pic Smaller 本地部署:压缩图片、转换格式,再搭建自己的 Web 工具
    分享到: 更多 (0)

    评论 抢沙发

    • 昵称 (必填)
    • 邮箱 (必填)
    • 网址