演示是在容器里的配置官方教程 {#%E6%BC%94%E7%A4%BA%E6%98%AF%E5%9C%A8%E5%AE%B9%E5%99%A8%E9%87%8C%E7%9A%84%E9%85%8D%E7%BD%AE%E5%AE%98%E6%96%B9%E6%95%99%E7%A8%8B}
官方教程 https://docs.halo.run/getting-started/install/jar-file/
下面是我的演示教程
注意事项
application.yaml {#application.yaml}
这里演示一下 application.yaml的配置,数据是MYSQL
server:
# 运行端口 可以一个两处
port: 1314
spring:
# 数据库配置,支持 MySQL、MariaDB、PostgreSQL、H2 Database,具体配置方式可以参考下面的数据库配置
r2dbc:
#配合宝塔面板创建i8520_bbs是数据库名
url: r2dbc:pool:mysql://localhost:3306/i8520_bbs
#数据库用户名
username: i8520_bbs
#数据库密码 直接复制创建时候生成的密码就可以
password: 1223
sql:
init:
mode: always
# 需要配合 r2dbc 的配置进行改动
platform: mysql
halo:
caches:
page:
# 是否禁用页面缓存
disabled: true
# 工作目录位置
work-dir: ${user.home}/.halo2
# 外部访问地址
external-url: http://127.0.0.1:1314
# 附件映射配置,通常用于迁移场景
attachment:
resource-mappings:
- pathPattern: /upload/**
locations:
- migrate-from-1.x
halo.service {#halo.service}
[Unit]
Description=Halo Service
Documentation=https://docs.halo.run
After=network-online.target
Wants=network-online.target
[Service]
Type=simple
#如是root吧User=用户名注释掉
User=USER
#/usr/bin/java 是jdk的决定路径在宝塔搜索JDK可以安装
#JAR_PATH替换博客程序填写绝对路径
#/home/halo/.halo2/资源路径也必须是绝对路径
ExecStart=/usr/bin/java -Dfile.encoding=UTF-8 -server -Xms256m -Xmx256m -jar JAR_PATH --spring.config.additional-location=optional:file:/home/halo/.halo2/
ExecStop=/bin/kill -s QUIT $MAINPID
Restart=always
StandOutput=syslog
StandError=inherit
[Install]
WantedBy=multi-user.target
启停流程 {#%E5%90%AF%E5%81%9C%E6%B5%81%E7%A8%8B}
#重新加载 systemd
systemctl daemon-reload
#运行服务
systemctl start halo
#在系统启动时启动服务
systemctl enable halo
#查看服务日志
journalctl -n 20 -u halo
#停止 Halo 服务
service halo stop
#启动 Halo 服务
service halo start