logo NodeSeekbeta

【onefile】完全开源。一行docker命令搭建自己的聚合图床

image

image

它支持接入 阿里云 OSS、腾讯云 COS、Cloudflare R2、AWS S3、Oracle Object Storage 等对象存储,可以在一个后台里管理 bucket、上传文件、复制链接,也可以生成 API Key 给图床、Markdown 编辑器、脚本或 CI 使用。

docker部署

docker run -d --name onefile --restart unless-stopped \
  -p 27507:27507 \
  -e GITHUB_CLIENT_ID=your_github_client_id \
  -e GITHUB_CLIENT_SECRET=your_github_client_secret \
  -v onefile-data:/app/data \
  ghcr.io/zhihui-hu/onefile:latest

主要功能

  • 多云对象存储统一管理
  • 支持网页上传、文件管理、图片预览、复制链接
  • 支持大文件 multipart 分片上传,上传队列可暂停、继续、重试
  • 支持 API Key 上传,方便接入图床、脚本、编辑器
  • 支持公开上传页,可以发给朋友无登录上传
  • 支持图片压缩为 WebP
  • 默认 SQLite,Docker 一行部署
  • 支持 SQL 导入导出,迁移和备份比较方便
  • 后台登录使用 GitHub OAuth,需要提前准备 GitHub OAuth App

OneFile

github部署

GitHub OAuth callback 地址填:

https://你的域名/callback/auth

本地测试可以用:

http://localhost:27507/callback/auth

项目地址 / 文档:
https://zhihui-hu.github.io/one-file/

如果帮到你 欢迎点个start

12
  • 好东西 xhj003

  • 好东西 xhj001

  • 好东西,支持

  • 卧槽,这么大的工程免费送人? xhj005

  • 用上了 非常不错
    有个小问题是需要R2的全局admin key,如果能选择存储桶的权限就更好了
    另外 设置了兼容aws的s3路径 能上传 但链接被固定在了‘s3.us-east-1.amazonaws.com/’ 而没有用endpoint的地址 所以肯定不能访问了

  • @ele #5 最新代码已经修复啦

  • @ele #8 这个不错已经支持了 有时间帮忙测试一下呢

  • @huzhihui #9 这么快 我看看怎么实现的
    update
    可以实现了 好像是默认到第一个s3位置? 是API创建时选的桶 没问题

12

你好啊,陌生人!

我的朋友,看起来你是新来的,如果想参与到讨论中,点击下面的按钮!

📈用户数目📈

目前论坛共有72267位seeker

🎉欢迎新用户🎉