安装halo并导入备份 最后在加入Cloudrlare R2 图床 注意套CF防止R2被刷欠费

官网https://www.halo.run/

部署https://docs.halo.run/category/%E5%AE%89%E8%A3%85%E6%8C%87%E5%8D%97

安装halo博客

去docker 文件夹内创建一个 holo文件夹 和一个db文件夹 右键文件夹 权限 任何人 勾选读写 应用所有子文件夹

用群晖docker compose 输入以下命令


version: "3"

services:
  halo:
    image: registry.fit2cloud.com/halo/halo:2.21
    restart: on-failure:3
    depends_on:
      halodb:
        condition: service_healthy
    networks:
      halo_network:
    volumes:
      - /volume1/docker/halo:/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
    environment:
      # JVM 参数,默认为 -Xmx256m -Xms256m,可以根据实际情况做调整,置空表示不添加 JVM 参数
      - JVM_OPTS=-Xmx256m -Xms256m
    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: on-failure:3
    networks:
      halo_network:
    volumes:
      - /volume1/docker/db:/var/lib/postgresql/data
    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:

导入备份并恢复备份

把备份包导入并恢复即可

如何自动备份并上传到onedrive

去halo插件市场下载自动备份插件 安装后设置你想要自动备份的时间 我设置的是5小时

备份后目录会在/volume1/docker/halo/backups 用群晖自带的cloudsync 同步到onedrive即可