介绍

ImgYoung 是一个多渠道主备容灾的自部署图床,图片同时存进多个存储渠道,任何一个出问题都不影响上传和访问。

ImgYoung 是什么

ImgYoung 是一个自部署图床:一个 Go 二进制(或一个 Docker 镜像)就能运行,自带 Web 管理后台,MIT 许可。 存储层基于 rclone,图片可以存进 rclone 支持的任何后端:S3 / R2 / MinIO 等对象存储、WebDAV、各类网盘,以及本机磁盘。 每一份这样的存储配置在 ImgYoung 里叫一个渠道。

解决什么问题

自建图床最怕的不是功能少,而是图没了:免费图床停运、对象存储账号被封、网盘限流、服务器硬盘损坏——博客和笔记里的图片链接成批失效。 ImgYoung 的设计目标是让图片链接长期可用:

  • 一张图存多份。上传写进主渠道即返回,其余渠道在后台异步补齐副本;进程重启不丢补齐任务。
  • 访问时自动换渠道。默认由 ImgYoung 代理输出图片,某个渠道取不到就立即改从下一个有副本的渠道读,链接不变。
  • 账本也有备份。记录「哪张图在哪个渠道」的元数据库定时快照,写到每个健康渠道,本机损坏不会连带丢掉这份映射。

核心能力

能力说明
多渠道主备容灾健康渠道中优先级最高的是主渠道;周期健康探测发现故障即自动切换,副本异步补齐,水位在后台可见。见 存储渠道
渠道存储加密基于 rclone crypt,内容与文件名都加密,渠道服务商只看到密文;持有主密钥即可用标准 rclone 工具自行解密。见 渠道存储加密
元数据库自动备份出厂每 24 小时快照一次,写到每个健康渠道,各渠道各自保留最近 7 份;后台可立即备份、下载与恢复。见 备份与恢复
TTL 生命周期与冷图裁决有效期按「单次上传 > 用户默认 > 全局默认」三层决定,出厂开启访问即续期;超过 90 天(出厂值)没有公开访问的图进入「待清理」列表,由管理员决定删除或保留,不会自动删。见 生命周期
后台查重字节完全相同的图自动合并为一份物理文件;感知哈希相近的进入「疑似重复」列表人工裁决。查重在后台进行,不拖慢上传。见 管理后台
按需处理链接加 ?w=400 按预设宽度档缩放,浏览器支持时自动输出 WebP;处理结果缓存在本地磁盘。见 访问与链接
多用户与配额管理员建号,每个用户有自己的图片、上传 Token 与存储配额,普通用户之间互相不可见。见 管理后台
多种上传入口后台拖拽或粘贴、HTTP 上传接口、URL 转存、S3 协议(PicList 内置的 AWS S3 图床直接可用,PicGo 装上 S3 插件后同样可用)、PicGo / PicList 自定义图床。见 上传 与 客户端接入

此外还有防盗链(Referer 白名单)、代理 / 302 两种访问模式、Cloudflare CDN 缓存清理、审计日志、告警 Webhook 与 Prometheus 指标。

适合与不适合

适合:

  • 个人或小团队自用:博客、笔记、文档站的图片。
  • 手里有多个存储(对象存储的免费额度、网盘、VPS 磁盘),想让它们互为备份。
  • 不完全信任存储服务商,希望渠道里只有密文。

不适合:

  • 需要水平扩展或高可用集群。ImgYoung 是单实例设计(SQLite + 进程内任务队列),不支持多个进程共用同一份数据。
  • 对外开放的公共图床。没有公开注册、付费与计费,账号只能由管理员创建。
  • 私密图片。图片链接是公开的,知道链接即可访问;没有签名 URL 或访问鉴权,防盗链只是轻量防护。见 没有私有图片。
  • 相册、标签等图片组织。后台只提供列表、搜索与按用户 / Token / 时间筛选。
  • 常见四种以外的格式。只接受 JPEG、PNG、GIF、WebP(按文件内容识别,不看扩展名),不接受 SVG、HEIC、AVIF 等。

文档怎么读

第一次接触,从快速开始用 Docker 跑起来;要长期运行,再看安装方式与存储渠道。部署到公网前,读一遍 反向代理 与 备份与恢复。

本页目录