For AI agents: the complete documentation index is available at https://docs.halo.run/llms.txt, the full documentation bundle is available at https://docs.halo.run/llms-full.txt, and this page is available as Markdown at https://docs.halo.run/guide/install/offline.md.

使用离线包部署

先阅读《写在前面》

在继续操作之前,我们推荐您先阅读《写在前面》,这可以快速帮助你了解 Halo。

Halo 离线安装包使用 Docker + Docker Compose 的方式部署 Halo 及其他服务,安装包中内置了 Docker 程序和容器镜像文件,可以帮助用户在无法访问互联网的服务器上,完成 Halo 的安装部署。

下载安装包

请自行前往飞致云开源社区下载 Halo 最新版本的安装包,并复制到目标机器的 /tmp 目录下。

安装部署

解压安装包

以 root 用户 ssh 登录到目标机器,并执行如下命令:

cd /tmp
# 解压安装包(halo-offline-installer-v2.17.0-amd64.tar.gz 为示例安装包名称,操作时可根据实际安装包名称替换)
tar zxvf halo-offline-installer-v2.17.0-amd64.tar.gz
离线安装包目录结构

安装包目录说明

docker# 离线安装 Docker 使用到的文件
bin
containerd
containerd-shim-runc-v2
ctr
docker
docker-compose
dockerd
docker-init
docker-proxy
runc
service
docker.service
docker-compose.yaml# 包含 Halo 及数据库服务的 Docker Compose 文件
.env# Docker Compose 文件使用的变量声明文件,部分参数从该文件中读取
images# Halo 及数据库的容器镜像文件
halo.tar.gz
mysql.tar.gz
postgres.tar.gz
install.sh# 安装脚本
LICENSE
README.md

执行安装脚本

# 进入安装包目录(halo-offline-installer-v2.17.0-amd64 为示例安装包目录名称,操作时可根据实际安装包名称替换)
cd halo-offline-installer-v2.17.0-amd64

# 运行安装脚本
/bin/bash install.sh

根据脚本给出的提示,输入安装目录、服务端口、数据库信息等相关配置信息,等待脚本执行完成。

默认安装目录结构

假设采用默认安装位置 /opt/halo 完成安装,安装目录的文件结构如下:

data# 数据存储目录
db# 数据库数据存储目录,挂载至数据库容器
halo# Halo 数据存储目录,挂载至 Halo 容器
indices
keys
logs
plugins
themes
docker-compose.yaml# Docker Compose 文件
.env# Docker Compose 文件使用的变量声明文件,部分参数从该文件中读取
install.log# 安装脚本日志文件
LICENSE
README.md

安装完成后,可以直接进入 /opt/halo 目录,使用 docker-compose 命令完成后续维护操作,也可以修改 docker-compose.yaml 中的相关配置满足不同需求。

运行参数详解:

参数名描述
spring.r2dbc.url数据库连接地址,详细可查阅下方的 数据库配置
spring.r2dbc.username数据库用户名
spring.r2dbc.password数据库密码
spring.sql.init.platform数据库平台名称,支持 postgresqlmysqlmariadbh2
halo.external-url外部访问链接,如果需要在公网访问,需要配置为实际访问地址

数据库配置:

链接方式链接地址格式spring.sql.init.platform
PostgreSQL(推荐)r2dbc:pool:postgresql://{HOST}:{PORT}/{DATABASE}postgresql
MySQLr2dbc:pool:mysql://{HOST}:{PORT}/{DATABASE}mysql
MariaDBr2dbc:pool:mariadb://{HOST}:{PORT}/{DATABASE}mariadb
H2 Databaser2dbc:h2:file:///${halo.work-dir}/db/halo-next?MODE=MySQL&DB_CLOSE_ON_EXIT=FALSEh2

登录访问

用浏览器访问 /console 即可进入 Halo 管理页面,首次启动会进入初始化页面。