简介
Halo [ˈheɪloʊ],意为光环。当然,你也可以当成拼音读(哈喽)。
轻快,简洁,功能强大,使用 Java 开发的博客系统。
演示站点
前台地址:
后台地址: 用户名:admin,密码:123456
快速开始
Docker 部署:
# 拉取镜像 $ docker pull ruibaby/halo # 运行 $ docker run -d --name halo -p 8090:8090 -v ~/halo:/root/halo -e DB_USER=root -e DB_PASSWORD=123456 ruibaby/halo # 注意:DB_USER 和 DB_PASSWORD 务必修改并记下
Docker Compose 部署:
# 下载 nginx 配置文件模板 $ curl > /etc/nginx/nginx.tmpl # 获取 docker-compose. yaml 文件 $ yum install -y wget && wget -O docker-compose.yaml # 修改 docker-compose.yaml # 1. 修改 VIRTUAL_HOST,LETSENCRYPT_HOST 为自己的域名。 # 2. 修改 LETSENCRYPT_EMAIL 为自己的邮箱。 # 3. 修改 DB_USER 数据库用户名,注意:这是自定义的,请不要使用默认的!下面数据库密码同理。 # 4. 修改 DB_PASSWORD 数据库密码。 # 运行 $ docker-compose up -d
脚本部署(不推荐):
# 安装 Halo $ yum install -y wget && wget -O halo-cli.sh && bash halo-cli.sh -i # 更新 Halo $ bash halo-cli.sh -u
博客示例
Ryan0up’S Blog:
SNAIL BLOG:
宋浩志博客:
KingYiFan’S Blog:
AquanBlog:
主题
除了内置的 Anatole() 和 Material () ,还有下列主题没有集成在项目里,如有需要,请自行下载之后通过后台上传上去使用。
- Vno( – 来自 Jekyll 的一款主题,作者 Wei Wang。
- Hux( – 来自 Jekyll 的一款主题,作者 Xuan Huang。
- Story( – 来自 Typecho 的一款主题,作者 Trii Hsia。
- NexT( – 来自 Hexo 的一款主题,作者 iissnan。
- Casper( – 来自 Ghost 的一款主题,作者 Ghost。
- Pinghsu( – 来自 Typecho 的一款主题,作者 Chakhsu.Lau。
声明:不接受任何对移植主题功能上的意见和建议。
开源技术
Halo 的诞生离不开下面这些项目:
- Spring Boot:Spring 的快速开发框架
- Freemarker:模板引擎,使页面静态化
- H2 Database:嵌入式数据库,无需安装
- Spring-data-jpa:不需要写 sql 语句的持久层框架
- Ehcache:缓存框架
- Lombok:让代码更简洁
- oh-my-email:可能是最小的 Java 邮件发送库了,支持抄送、附件、模板等
- Hutool:一个 Java 基础工具 类库
- Thumbnailator:缩略图生成库
- AdminLTE:基于 Bootstrap 的后台模板
- Bootstrap:使用最广泛的前端 ui 框架
- Animate:非常好用的 css 动效库
- SimpleMDE – Markdown Editor:简洁,功能够用,且轻量级的 Markdown 编辑器
- Bootstrap-FileInput:基于 Bootstrap 的文件上传组件
- Font-awesome:使用最广泛的字体图标库
- JQuery :使用最广泛的 JavaScript 框架
- Layer:个人认为最实用最好看的弹出层组件,没有之一
- JQuery-Toast:消息提示组件
- Pjax:pushState + ajax = pjax
- OwO:前端表情库
环境要求
- JDK1.8以上。
- Maven3.x。
- 数据库
- MySQL 5.5以上
- MariaDB
- 或者直接使用H2Database,免安装。
- Git
需要注意的是:如果使用一键安装脚本(后面会讲到),那么你只需要安装数据库即可(如果使用MySQL或者MariaDB的话)。如果不使用MySQL或者MariaDB,那么你什么都不需要安装,直接执行脚本即可。
相关文档
使用文档:
wiki: