搭建Halo网站记录

本文最后更新于 2023年9月1日。

20230907更新

用了几天明显发现页面加载慢,前端首次加载慢,后续就好了。
但是后端每次都很慢,并且容易出现菜单加载不全的问题。不知道原因。手机端加载后台更是每次加载很久都不能正常显示菜单。所以决定弃用了。

以下是原内容。

今天搭建了基于Halo的网站,记录一下搭建过程。

编写docker-compose的yml文件

新建halo-docker-compose.yml文件,内容如下:

version: "3.7"
services:
  halo:
    image: halohub/halo:2.9
    container_name: halo
    hostname: halo
    restart: on-failure:3
    volumes:
      - haloHalo:/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:
      # 外部访问地址,请根据实际需要修改
      # - --halo.external-url=http://localhost:8090/
      - --halo.external-url=http://halo
networks:
  default:
    external:
      name: traefik
volumes:
  haloHalo:

因为我已经有traefik作为代理,所以网络设置为traefik所在的网络traefik.
由于是测试使用,所以使用默认的H2数据库,不需要单独设置数据库了。

traefik动态配置中增加halo路由和服务

http:
routers:
    halo:
      service: halo
      entrypoints: websecure
      rule: Host(`a.weiyoun.com`)
  services:
    halo:
      loadBalancer:
          servers:
            - url: http://halo:8090 

启动服务

halo-docker-compose.yml所在文件夹中执行:

docker-compose -f /var/lib/docker/volumes/dc1/halo-docker-compose.yml up

设置网站

启动成功后访问域名a.weiyoun.com就会进入网站的设置界面,设置好用户和网站信息就可以使用了。

可以更换成自己喜欢的主题,发布自己的文章等等。