使用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 镜像:

注意 目前 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 数据库平台名称,支持 postgresql、mysql、h2,需要与 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模板

这里就不记录了。。。

经验分享 程序员 微信小程序 职场和发展