当前位置: 首页 > article >正文

【docker系列】创建博客 halo 2.11

1. 介绍

Halo 是一款带后台管理的开源建站工具,基于 Java Spring Boot 构建的,支持REST API、模板系统、附件系统和评论系统等功能。可以搭配不同的模板和插件使用,支持富文本编辑器。可以构建网站或者博客。

demo地址:https://demo.halo.run
demo后台地址:https://demo.halo.run/console
用户名:demo
密码:P@ssw0rd123..

2. 需要环境

2.1 硬件需求

RAM 1G
硬盘 400M

2.2 软件需求

需要Linux系统,Docker、Docker-Compose,环境安装见《必备的Docker和Dockercompose环境安装》

3.安装

再docker目录下创建安装文件夹,这里需注意,halo 1.x和2.x版本不兼容,做好备份,不能直接覆盖。

3.1 Docker-Compose方式安装

# 切换到root权限
sudo -i
# 创建数据目录
mkdir /etc/docker/halo && cd /etc/docker/halo

# 编辑docker-compose文件
vim docker-compose.yaml

version: "3"

services:
halo:
image: registry.fit2cloud.com/halo/halo:2
restart: always
depends_on:
halodb:
condition: service_healthy
networks:
halo_network:
volumes:
- ./halo2:/root/.halo2
ports:
- "8090:8090"
healthcheck:
test: ["CMD", "curl", "-f", "http://localhost:8090/actuator/health/readiness"]
interval: 30s
timeout: 5s
retries: 5
start_period: 30s
command:
- --spring.r2dbc.url=r2dbc:pool:postgresql://halodb/halo
- --spring.r2dbc.username=halo
# PostgreSQL 的密码,请保证与下方 POSTGRES_PASSWORD 的变量值一致。
- --spring.r2dbc.password=openpostgresql
- --spring.sql.init.platform=postgresql
# 外部访问地址,请根据实际需要修改
- --halo.external-url=http://localhost:8090/
halodb:
image: postgres:15.4
restart: always
networks:
halo_network:
volumes:
- ./db:/var/lib/postgresql/data
# 默认没有设置端口映射,如果需要在容器外部访问数据库,可以添加端口为 5432(默认)
healthcheck:
test: [ "CMD", "pg_isready" ]
interval: 10s
timeout: 5s
retries: 5
environment:
- POSTGRES_PASSWORD=openpostgresql
- POSTGRES_USER=halo
- POSTGRES_DB=halo
- PGUSER=halo

networks:
halo_network:

复制上述配置文件内容,shift+ins 粘贴文本后,输入 :wq 退出保存

#启动安装服务
docker-compose up -d

bd7816b04d1b40ac9cb805231efa5629.png

3.2 Docker安装

再docker目录下创建安装文件夹,这里需注意,halo 1.x和2.x版本不兼容,做好备份,不能直接覆盖。

# 切换到root权限
sudo -i
# 创建数据文件夹
mkdir /etc/docker/halo && cd /etc/docker/halo

1.创建容器

# -d 后台运行 -p端口映射 -v 工作目录映射
docker run -it -d --name halo -p 8090:8090 -v ~/.halo2:/root/.halo2 halohub/halo:2.10

注意:此命令默认使用自带的 H2 Database 数据库。如需使用 PostgreSQL,请参考:使用 Docker Compose 部署

4.使用配置

用浏览器访问 /console 即可进入 Halo 管理页面,首次启动会进入初始化页面
通过 http://ip:端口号 的形式无法访问,云服务型需要再控制面板的安全策略阻里面打开访问端口8090(默认)

5.注意事项

Halo 2.0 的底层架构变动,无法兼容 1.x 的数据,导致无法平滑升级,所以需要进行数据迁移。官方提供了从 Halo 1.5 / 1.6 版本迁移的插件。


http://www.kler.cn/a/458105.html

相关文章:

  • 计算机网络—————考研复试
  • 八大排序——直接插入排序
  • Wndows bat将一个目录下所有子文件夹的路径导出到txt文本
  • 超大规模分类(一):噪声对比估计(Noise Contrastive Estimation, NCE)
  • SpringBoot返回文件让前端下载的几种方式
  • 深入理解 Vue 3 中的具名插槽
  • 【yolov5】实现FPS游戏人物检测,并定位到矩形框上中部分,实现自瞄
  • 项目实践-贪吃蛇小游戏
  • 基于Resnet、LSTM、Shufflenet及CNN网络的Daily_and_Sports_Activities数据集仿真
  • 机器人骑自行车过程的MATLAB建模与数值仿真模拟
  • Linux之ARM(MX6U)裸机篇----1.开发环境搭建
  • C语言基础——指针(5)
  • MySQL基础-常见的增删改查操作语句总结
  • 【实习】面经:海康威视-软件开发工程师(嵌入式)
  • App信息收集(小迪网络安全笔记~
  • [Unity Shader] [图形渲染]Shader数学基础18-内置变量
  • git 在windows上显示很多文件有改动实际没有变化
  • c/c++ 无法跳转定义
  • 爬虫 APP 逆向 ---> shopee(虾皮) 电商
  • 表单元素(标签)有哪些?
  • 游戏引擎学习第66天
  • 信息差的商业渠道管理:大数据如何优化渠道管理
  • HTML5新特性|01 音频视频
  • 【每日学点鸿蒙知识】属性变量key、waterflow卡顿问题、包无法上传、Video控件播放视频、Vue类似语法
  • “乡村探索者”:村旅游网站的移动应用开发
  • #端云一体化开发# #HarmonyOS Next#《说书人》鸿蒙原生基于角色的对话式文本编辑开发方案