/Picbur

个人图床,基于MinIO和OSS

Primary LanguageJava

Joe's picture bed

[TOC]

TODO 添加了docker部署,README文件待更新。

体验接口:picbur.hujinwen.com

简介

其实都是无用的话。。大佬们请直接看使用

  • 工作上经常用到图床,现有的免费图床并不好用,而且你并不知道什么时候就关闭了。so这个demo项目诞生了!

使用

开箱即用

  1. 下载releases中编译好的jar包

  2. 在jar包同目录下创建config.yml配置文件,配置说明请查看配置详解(config.yml)

  3. java -jar xxx.jar直接运行

  4. http://<ip>:8868 访问

自行编译

  1. 该项目依赖我的另一个项目Jokit(一个java工具包)。由于没有放到**仓库所以需要先clone该项目,再安装到maven本地仓库,注意pom.xml中版本号是否一致。

    # clone代码
    git clone https://github.com/hu-jinwen/Jokit.git
    # 进入目录
    cd Jokit
    # 安装到maven本地仓库
    mvn install
  2. resources中的config.yml.example文件拷贝一份命名为config.yml

  3. 按照配置详解(config.yml)提示填上你自己的内容

  4. mvn package打包

  5. java -jar运行jar包

  6. http://<ip>:8868 访问

详解

配置详解(config.yml)

图片存储配置

MinIO和OSS存储至少需要配置一个,配置了多个优先存储在MinIO中

  • MinIO

    minIOStore:
      # 多endpoints以分号分隔;
      endpoints: http://xxxx.xxxx.com;http://xxx.xxx.com
      bucketName: <my-bucket>
      accessKeyId: <accessKeyId>
      secretAccessKey: <secretAccessKey>
  • OSS

    开通方式见阿里OSS开通说明

    ossStore:
      # oss不支持多endpoints
      endpoints: oss-cn-hangzhou.aliyuncs.com
      bucketName: <bucketName>
      accessKeyId: <accessKeyId>
      secretAccessKey: <secretAccessKey>

阿里OSS开通说明

  1. 访问阿里云oss首页根据提示开通

  2. 登陆阿里云管理控制台 -> 控制台

  3. 创建bucket

    填写必要信息

    读写权限选公共读

    点击bucket -> 概览,得到该bucket的endpoint

  4. 获取accessKeyIdsecretAccessKey 获取accessKeyId和secretAccessKey

最近更新

  • 2020年8月23日 2.2.0发布:
    • 可选图片存储位置,minio或者oss
    • 配置文件修改,由conf.properties改为config.yml
  • 2020年03月26日 2.1.0发布:
    • MinIO客户端,由单机版改为集群
    • 配置可添加多集群(多endpoint以分号分隔)
  • 2020年03月20日 2.0.0正式版发布(重大更新,前期版本不可用):
    • 将内置存储由 阿里OSS 改为 MinIO。自己搭建 MinIO 集群,0费用
    • 新增测试接口 picbur.hujinwen.com

TODO

  • 提供GUI版本
  • 将端口号外置,配置文件外置
  • 批量上传(一次选多张图,选择文件夹)
  • 通过图片URL上传