ubuntu24.04使用docker搭建halo

先按照 这里配置docker

然后使用 docker compose 配置,更新简单

创建docker-compose文件

创建 docker-compose.yaml 文件,内容如下

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60

services:
halo:
# https://hub.docker.com/r/halohub/halo/tags
image: halohub/halo:2.15.0
container_name: halo
restart: always
depends_on:
halodb:
condition: service_healthy
networks:
- icpcs
volumes:
- /data/docker_apps/halo:/root/.halo2
ports:
- "8095:8090"
healthcheck:
test: ["CMD", "curl", "-f", "http://localhost:8090/actuator/health/readiness"]
interval: 30s
timeout: 5s
retries: 5
start_period: 30s
command:
- --spring.r2dbc.url=r2dbc:pool:postgresql://halodb/halo
- --spring.r2dbc.username=halo
# PostgreSQL 的密码,请保证与下方 POSTGRES_PASSWORD 的变量值一致。
- --spring.r2dbc.password=dveerwvc
- --spring.sql.init.platform=postgresql
# 外部访问地址,请根据实际需要修改
- --halo.external-url=https://icpcs.lzu.edu.cn/doc
halodb:
# https://hub.docker.com/_/postgres/tags
image: postgres:15.4
container_name: halodb
restart: always
networks:
- icpcs
volumes:
- /data/docker_apps/postgresql:/var/lib/postgresql/data
ports:
- "5432:5432"
healthcheck:
test: [ "CMD", "pg_isready" ]
interval: 10s
timeout: 5s
retries: 5
environment:
- POSTGRES_PASSWORD=dveerwvc
- POSTGRES_USER=halo
- POSTGRES_DB=halo
- PGUSER=halo

networks:
icpcs:
driver: bridge
ipam:
config:
- subnet: 10.14.0.0/16
gateway: 10.14.0.1

  • 注意,10.14.0 不要与本地网络其他ip冲突
  • 版本为 halohub/halo:2.15.0 可以在 docker-hub 查看有哪些版本
  • 数据库密码为 dveerwvc 上面出现了两次,修改的话注意
  • postgresql 数据库版本不要轻易修改

创建本地数据目录

这里数据都放在了 /data/docker_apps/halo/data/docker_apps/postgresql 这里,你也可以放在其他地方,但是注意上面docker-compose文件中对应的路径也要修改

1
2
mkdir /data/docker_apps/halo
mkdir /data/docker_apps/postgresql

安装

docker-compose.yaml 文件所在目录,执行

注意最新版没有 docker-compose

1
docker compose up -d

更新

直接再次在 docker-compose.yaml 文件所在目录运行这个命令即可

1
docker compose up -d

本文作者:yuhldr
本文地址: https://yuhldr.github.io/posts/3d9a91dc.html
版权声明:转载请注明出处!