共计 2834 个字符,预计需要花费 8 分钟才能阅读完成。
提醒:本文最后更新于 2019-12-13 14:26,文中所关联的信息可能已发生改变,请知悉!
这是一个基于多家对象存储源的 Spring Boot 开源图床项目。本项目使用 Spring Boot 搭建, 针对用户更方便的管理自己的图片管理拓展功能, 支持对接 网易
, 阿里
, 腾讯
, 七牛
等多家对象存储. 后台对用户管理。配置存储源。(目前已经支持 网易 NOS
和 阿里 OSS
,以后会更新更多.) 用户注册邮箱验证,以及后台配置邮箱服务器。以及图片鉴黄配置等操作。
Hellohao 图床
预览地址: http://tc.hellohao.cn/
更多后台功能你可以自己搭建配置使用。
系统预览
更新日志
2019-06-27
增加对接七牛云储存(目前支持网易、阿里、又拍、七牛)修改后台主页显示。修复调整 N 个小问题。
2019-06-23
添加列表多条件筛选功能。修复多个页面错误
2019-06-17(本次更新修复严重 BUG)
修改邮箱激活成功页面的网站名和激活域名错误问题。增加 又拍云储存
后期更新腾讯云,七牛云 优化登录失效后后台刷新只在内部显示首页问题。优化 js/css 样式引用,增加页面加载速度。
降低对 mysql 版本的兼容性,已支持主流 MYSQL 版本, 测试 mysql5.5
可用。(感觉 5.5 已经够了,版本再低的可以留着当传家宝了)
2019-06-16
修改上传插件,可支持使用截图工具直接粘贴进
增加上传文件详细配置:针对游客和会员进行不同的上传策略配置(图片大小限制、批量上传数量限制、以及图片类型后缀名配置)修复多个系统内部错误。优化性能。
本次更新较多,数据库有所修改,请使用者做好备份后,重新导入新的 sql 文件
运行环境
- JDK 1.8
- MySQL 5.5+
详细部署教程
部署教程分为:1. 一键部署;2. 手动部署。任选一种部署即可(手动能力强的推荐:手动部署)
前言
部署依赖于 java 环境:
yum install java-1.8*
一,自动部署
创建数据库:
创建 mysql 数据库 picturebed
,并导入picturebed.sql
文件建表。
执行如下命令,按步骤操作即可。
yum install -y wget && wget -O hellohao.sh http://www.hellohao.cn/gg/hellohao.sh && bash hellohao.sh
该方法简单粗暴,包括 java 环境,不需要去下载 jar 包,不需要自己去写命令运行。也不需要 screen
或者 nohub
之类的后台命令,让用户傻瓜式操作。
注意事项:
- 安装:等项目完全部署成功后且确认图床可以访问,在控制台按
Ctrl+C
后退出即可。(若内有 java 环境,先在选择界面安装 java 环境,然后重新执行以上命名安装图床) - 如果之前存在脚本安装过的图床:请先根据提示按 3 停止然后再按 2 卸载,才可以重新安装。
- 如果重启了服务器,则需要重新部署。没有开机自启。
二,手动部署
先下载编译包:https://github.com/Hello-hao/Tbed/releases,做准备并进行如下操作。
全平台支持:Linux/Windows/unix(这里以 linux 宝塔环境举例子):
导入数据库
创建数据库 picturebed
, 字符集选择 utf8
后
导入picturebed.sql
在应用商店搜索 tomcat
选择 tomcat8 版本下载安装(这里说明一下,其实我们并不需要 tomcat,只是因为宝塔下载 tomcat8 自带 java 环境,而这个 java 环境正是我们需要的)
配置文件
打开 application.properties
修改 MySQL
和 服务器端口
等连接信息改成你服务器的信息.(端口号改不改都行,前提是保证其他程序没有被占用)
# 数据库账号 picturebed
spring.datasource.username=root
# 数据库密码
spring.datasource.password=root
# 数据库链接地址
spring.datasource.url=jdbc:mysql://localhost:3306/picturebed?useUnicode=true&characterEncoding=utf8&serverTimezone=GMT%2B8
# 端口
server.port=8088
# 鉴黄周期表达式 下方表达式为每天七点半执行
# 不懂请勿乱修改。具体可以参考官方文档 http://doc.wwery.com
Expression=0 30 04 * * ?
# 下边的配置项不需要修改。
mybatis.configuration.map-underscore-to-camel-case=true
mybatis.mapper-locations=classpath:mapper/*.xml
logging.level.cn.hellohao.dao=debug
spring.jackson.date-format=yyyy-MM-dd HH:mm:ss
spring.jackson.time-zone=GMT+8
spring.datasource.driver-class-name=com.mysql.jdbc.Driver
spring.datasource.type=com.alibaba.druid.pool.DruidDataSource
spring.thymeleaf.cache=false
multipart.maxFileSize=10240KB
multipart.maxRequestSize=10240KB
spring.thymeleaf.mode = LEGACYHTML5
spring.http.multipart.location=/data/upload_tmp
部署
jdk1.8 和 mysql 数据库、还有配置文件,我们都改好了。接下来开始部署吧。
在系统目录 /home
下新建一个 javaweb
目录
把 Tbed.jar
和application.properties
放到服务器你刚才新建的目录下:/home/javaweb
,注意这两个文件必须要在同一目录下不能分开。
启动项目
在完成了上述步骤后,然后 xshell 链接你的服务器,进入你刚才的目录,然后执行一下命令.
进入你的目录:
[root@VM_0_15_centos ~]# cd /home/javaweb
部署 jar 编译包:
[root@VM_0_15_centos javaweb]# java -jar Tbed.jar
ok! 等项目跑起来即可,如图:
这里注意:记得把项目所需要的端口(8088)放行,否则访问不了!!
启动后访问地址为:http:// 服务器 IP:8088 , 8088
就是你配置 server.port=8088
的端口.
这样,你的站点就启动了。注意:
启动后命令行是不能关闭的,否则你的站点就会不能访问。可以用 nohup
或者 screen
之类的命令后台运行。
初始用户名:admin
初始邮箱:admin
初始密码admin
视频教程
- 再不会剁手
部署视频:https://www.bilibili.com/video/av55569119