用Docker部署PicSmaller图片压缩工具
在日常生活中,我们常因图片文件过大而无法上传至某些网站,这时就需要对图片进行压缩处理。今天为大家推荐一款免费开源的在线图片压缩工具:Pic Smaller。
它支持Docker独立部署,基于Vite + React开发,拥有直观的界面和良好的移动设备适配性,还能进行压缩配置。由于采用纯本地压缩方式,没有任何服务器端逻辑,所以使用起来非常安全。

这款工具具备诸多实用功能,可智能压缩JPEG、PNG、WEBP、AVIF、SVG和GIF等多种格式的图像,支持批量添加图片和文件夹,提供丰富的压缩配置选项,还能比对压缩效果,并且支持国际化多语言,是一款非常好用的在线图片压缩工具。
具体操作
1.创建一个PicSmaller目录,用于存放/管理拉取的资源:
mkdir -p PicSmaller2.拉取源码到PicSmaller目录
cd /自定义路径/PicSmaller && git clone https://github.com/joye61/pic-smaller.git拉取失败解决方法
如果源码拉取失败,请手动将源码下载到PicSmaller目录,注意解压后命名为"pic-smaller"。
3.进入pic-smaller子目录
cd ./pic-smaller4.启动容器
因为在前面我们拉取的源码中,已经内置了Dockerfile脚本,所以我们只需要使用docker build命令构建镜像和docker run命令启动容器即可:
① 构建镜像:
docker build -t picsmaller .在执行该命令时,如遇npm报错也没事,等它跑完继续下一步即可。
② 启动容器:
docker run -p 3001:3001 -d picsmaller运行成功后浏览器地址输入:http://<服务器IP地址>:3001,即可访问PicSmaller服务。
PicSmaller的使用
我这里就以一张原大小为1.52MB的图作为演示:
压缩前:
自定义压缩配置:
压缩后:
若您认为该项目部署流程繁琐,或对工具的功能、操作体验不满意,亦或者不想用Docker来部署,那不妨试试以下纯前端手搓代码,同样可以实现图片压缩,同样安全高效~
免费在线图片压缩工具(纯前端代码)

Demo:在线体验
支持的格式
JPEG(.jpg/.jpeg)、PNG(.png)、GIF(.gif)、WebP(.webp)、BMP(.bmp)
工作原理:
前端通过Fetch API传输图片数据,后端利用ASP.NET Core接收文件并经ImageService压缩处理
成功返回200状态码,错误返回400。
使用说明:
① 使用时先上传图片,通过滑块在0%到100%间调节压缩质量
0%对应最小文件尺寸但质量最低,100%对应最大文件尺寸但质量最高,默认30%为文件大小与质量的平衡点,调节时可实时查看百分比
② 然后点击“上传并压缩图片”按钮,处理完成后右侧会显示压缩图
③ 最后点击“下载压缩图片”即可保存。
我们继续用前面大小为1.52MB的 PicSmaller.jpg 图片作为演示。
压缩后:
此时我们可以看到,经过压缩后的图片体积大小明显小了很多(压缩质量为12%时,压缩后的图片大小仅为29.86kb),且压缩后的图片与原图相比,肉眼几乎看不出有任何明显变化。

其实搞个js,在上传时候过一手也行,wp好像都是通过插件去一点点压缩。现在很多网站都是上传压缩。
是的 只要是不影响画质 越小越好😂
我也是会压一下,在一个网站压缩下,或者ps改下尺寸。然后再上传,网站不仅仅是压缩,还限制上传大小,太大也不给上传压缩。
现在很多程序好像都是支持上传压缩的 但压缩的程度和效果都不受控制 自己弄一个手动压缩 好一点 我个人觉得
一般情况下图片都预告处理好,没有处理的一般都交给框架的图片组件去处理,够用了。
是的 大部分人都是这么操作的
我都是本地压缩处理好了再上传。
我也是 简单易用 安全不高效😂
这玩意有点强制压缩啊!
只要不过分的影响图片画质 强制压缩也好 非强制也罢 只要能将图片压缩到极致 足够小 又不影响画质 那就更好了
我用的截图工具自带压缩功能,图片基本不大。采用webp格式。在保证清晰度的同时也保证了速度
自带压缩功能固然是好的 可能每个人的想法不一样吧 在不明显影响画质的情况下 我更偏向于更小的图片大小😂
发现你好爱docker。哈哈哈
不是爱 是实用 所以才用
我没用压缩,都是原汁原味。主打的就是撑爆水管
原汁原味好啊 尽享高品质博客生活
我一般都是在iloveimg这个网站压缩完再上传的。
我更偏向于能用自己的就尽量用自己的 自己的不行 那就用别人的
我开发的程序,包括个站商店和简笔记,笔记星球,都是上传原图到后端,后端自动压缩的,这样不用在自己电脑操作一遍再上传(特别用手机上传的),也能保证网站图片体积较小
可不是每个人都有你这技术呀 没技术 又不想多花钱 又想节省空间 那就只能按这种老办法操作了 还有 很多人其实都是不太愿意将自己的资源 (包括图片)经第三方服务器后端处理的 总担心不安全 哈哈
我一般都是压缩好了,再传,毕竟小水管
在不影响画质的情况下 肯定是体积越小越好了