使用Halo搭建个人博客

1、Halo简介

官网地址1:https://halo.run/

官网地址2:https://docs.halo.run/

使用Docker安装地址:https://docs.halo.run/getting-started/install/docker

2、Docker搭建Halo个人博客

可用的 Halo 2.3.0 的 Docker 镜像:

  • halohub/halo
  • ghcr.io/halo-dev/halo

注意

目前 Halo 2 并未更新 Docker 的 latest 标签镜像,主要因为 Halo 2 不兼容 1.x 版本,防止使用者误操作。我们推荐使用固定版本的标签,比如 halohub/halo:2.3.0

2.1、创建MySQL容器

# 创建目录
mkdir -p /opt/mysql/conf 
mkdir -p /opt/mysql/logs 
mkdir -p /opt/mysql/data

# 创建容器
docker run -p 3306:3306 --name mysql \
-d --restart=always --privileged=true \
-v /opt/mysql/conf:/etc/mysql/mysql.conf.d \
-v /opt/mysql/logs:/var/log/ \
-v /opt/mysql/data:/var/lib/mysql \
-e MYSQL_ROOT_PASSWORD=123456 \
mysql:5.7.25

2.2、创建Halo容器

docker run \
  -it -d --restart=always \
  --name halo \
  -p 8090:8090 \
  -v /opt/.halo2:/root/.halo2 \
  halohub/halo:2.3.0 \
  --spring.r2dbc.url=r2dbc:pool:mysql://localhost:3306/halo \
  --spring.r2dbc.username=root \
  --spring.r2dbc.password=123456 \
  --spring.sql.init.platform=mysql \
  --halo.external-url=http://localhost:8090/ \
  --halo.security.initializer.superadminusername=admin \
  --halo.security.initializer.superadminpassword=P@88w0rd
  • -it:开启输入功能并连接伪终端
  • -d:后台运行容器
  • –name:为容器指定一个名称
  • -p:端口映射,格式为 主机(宿主)端口:容器端口 ,可在 application.yaml 配置。
  • -v:工作目录映射。形式为:-v 宿主机路径:/root/.halo2,后者不能修改。

变量详解:

参数名 描述
spring.r2dbc.url 数据库连接地址,详细可查阅下方的 数据库配置
spring.r2dbc.username 数据库用户名
spring.r2dbc.password 数据库密码
spring.sql.init.platform 数据库平台名称,支持 postgresqlmysqlh2,需要与 SPRING_R2DBC_URL 对应
halo.external-url 外部访问链接,如果需要再公网访问,需要配置为实际访问地址
halo.security.initializer.superadminusername 初始超级管理员用户名
halo.security.initializer.superadminpassword 初始超级管理员密码

数据库配置:

链接方式 链接地址格式 SPRING_SQL_INIT_PLATFORM
PostgreSQL r2dbc:pool:postgresql://{HOST}:{PORT}/{DATABASE} postgresql
MySQL r2dbc:pool:mysql://{HOST}:{PORT}/{DATABASE} mysql
H2 Database r2dbc:h2:file:///${halo.work-dir}/db/halo-next?MODE=MySQL&DB_CLOSE_ON_EXIT=FALSE h2

用浏览器访问 $HALO_EXTERNAL_URL/console/(外部访问链接)即可进入 Halo 管理端。管理员用户名为 admin,登录密码为上方设置的 HALO_SECURITY_INITIALIZER_SUPERADMINPASSWORD

提示

如果需要配置域名访问,建议先配置好反向代理以及域名解析再进行初始化。如果通过 http://ip:端口号 的形式无法访问,请到服务器厂商后台将运行的端口号添加到安全组,如果服务器使用了 Linux 面板,请检查此 Linux 面板是否有还有安全组配置,需要同样将端口号添加到安全组。

2.3、访问Halo

访问地址:http://localhost:8090
后台地址:http://localhost:8090/console
文档地址:http://localhost:8090/swagger-ui.html # 只有dev可以访问

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-HpR3ywnZ-1678444874462)(null)]

2.4、切换Halo模板

这里就不记录了。。。

你可能感兴趣的:(其他,docker,数据库)