如何在本地快速体验 Halo

6 阅读

本文介绍如何在本地环境快速启动一个 Halo 实例,便于你在本机体验或者测试 Halo 的功能。

下面给出两种常见做法:使用 java -jar 运行官方构建的 JAR,或使用 docker run 拉起单容器。二者都默认使用内置 H2 数据库,不必单独安装 MySQL 或 PostgreSQL;数据会落在本机用户目录下的工作文件夹中(后文会说明具体路径)。

如果你想购买服务器在生产环境部署,请参考:安装指南

方式一:使用 java -jar

安装 JDK

后端基于 Java 21 构建,推荐使用 Eclipse Temurin 发行版。

  • macOS / Linux

    # 推荐使用 SDKMAN 管理 JDK 版本,如已安装可略过
    curl -s "https://get.sdkman.io" | bash
    
    # 安装 JDK 21
    sdk install java 21-tem
  • Windows

    前往 https://adoptium.net 下载 JDK 21 安装包,按向导安装即可。

启动

  1. GitHub Releasesdownload.halo.run 下载最新的 halo-*.jar,放到任意目录(下文假设文件名为 halo.jar)。

  2. 在该目录执行:

    macOS / Linux

    java -jar halo.jar

    Windows(在 PowerShell 或 CMD 中)

    java -jar halo.jar
  3. 启动成功后,在浏览器打开 http://localhost:8090,按向导完成初始化。

  4. 结束体验时,在运行 java 的终端中按 Ctrl+C 停止进程。

数据存放位置:未自定义配置时,Halo 会将工作目录(含内置 H2 数据库、附件等)放在当前用户主目录下的 .halo2,即 macOS / Linux 为 ~/.halo2,Windows 为 %USERPROFILE%\.halo2

提示:H2 为嵌入式文件数据库,不适合作为生产唯一存储;正式环境请换用 PostgreSQL 等并做好 备份。需要自定义端口、外部访问地址或数据库时,可参考 使用 JAR 文件部署

方式二:使用 docker run

安装 Docker

安装完成后请确保 Docker 守护进程已运行。

启动

  1. 执行:

    # 社区版
    docker run -it -d --name halo -p 8090:8090 -v ~/.halo2:/root/.halo2 halohub/halo:2
    
    # 专业版 / 商城版
    docker run -it -d --name halo -p 8090:8090 -v ~/.halo2:/root/.halo2 halohub/halo-pro:2

    若拉取 Docker Hub 较慢,可将镜像名替换为 registry.fit2cloud.com/halo/halo:2registry.fit2cloud.com/halo/halo-pro:2

  2. 浏览器访问 http://localhost:8090 完成初始化。

  3. 不再使用时停止并删除容器:

    docker stop halo
    docker rm halo

数据存放位置:与 JAR 方式一致,通过 -v ~/.halo2:/root/.halo2 将容器内工作目录映射到本机 ~/.halo2(Windows 请将 ~/.halo2 换为 %USERPROFILE%\.halo2 对应的实际路径)。

两种方式怎么选

方式 适合谁
java -jar 已装 JDK、希望直接看日志、或要在本机调试 JVM 参数
docker run 本机不想装 Java、或希望环境更接近容器化部署

两种方式若都使用默认挂载路径,数据目录都会落在 ~/.halo2(Windows 为 %USERPROFILE%\.halo2),请勿在同一目录被两个进程同时占用:若先用 JAR 跑过,再改用 Docker,请先停掉 JAR 进程,或给 Docker 换一个挂载路径。


评论