PlotVault PDM 安装部署指南

本文档介绍如何部署 PlotVault PDM 后端服务。PlotVault 支持多种部署方式,推荐使用 Docker Compose 进行一键部署。

前置要求

  • Docker 和 Docker Compose
  • 至少 1GB 的磁盘空间
  • 网络连接(用于拉取镜像)

方式 A:Docker Compose(推荐)

这是最简单的部署方式,只需几步即可完成。

步骤 1:准备配置文件

从仓库复制 docker-compose.yml 文件到你的部署目录:

1
2
git clone https://github.com/donniemarc/plotvault-PDM.git
cd plotvault-PDM

步骤 2:配置环境变量

编辑 docker-compose.yml,替换所有 <...> 占位符:

占位符说明示例值
<DOCKERHUB_USER>Docker Hub 用户名donniemarc
<数据库密码>PostgreSQL 数据库密码your_secure_password
<API_TOKEN>客户端连接用的访问令牌your_api_token
<HOST_PORT>对外端口8642
<DATA_HOST_PATH>图纸数据宿主目录/home/user/plotvault/data
<CONFIG_HOST_PATH>软件缓存宿主目录/home/user/plotvault/config
<PGDATA_HOST_PATH>数据库数据宿主目录/home/user/plotvault/pgdata

步骤 3:启动服务

1
docker compose up -d

启动后将运行三个容器:

  • db - PostgreSQL 18(存储元数据)
  • plotvault-pdm - 后端 API,端口 8642
  • converter(可选)- STEP/IGES 服务端转换,端口 8000

步骤 4:验证部署

1
curl http://<主机IP>:8642/api/health

预期输出:

1
{"service":"plotvault-pdm","status":"ok"}

方式 B:构建镜像并推送 Docker Hub

适用于需要在远程主机部署的场景。

步骤 1:构建镜像

在 Windows PC 上(需 Docker Desktop):

1
.\build-push.ps1

按提示输入 Docker Hub 用户名。

步骤 2:在远程主机部署

在目标主机上将 docker-compose.yml 的镜像指向 <你的用户名>/plotvault-pdm-server:latest,然后执行:

1
docker compose up -d

方式 C:离线 tar 导入

适用于无外网环境。

步骤 1:在 PC 上构建镜像

1
2
docker build -t plotvault-pdm-server ./server
docker save plotvault-pdm-server | gzip > plotvault-pdm-server.tar.gz

步骤 2:传送到目标主机并加载

1
2
docker load < plotvault-pdm-server.tar.gz
docker compose up -d

验证服务

部署完成后,可以通过以下方式验证服务是否正常运行:

1
2
3
4
5
6
7
8
# 检查容器状态
docker compose ps

# 查看日志
docker compose logs -f plotvault-pdm

# 测试健康检查接口
curl http://localhost:8642/api/health

下一步

部署完成后,请参阅 使用说明 了解如何使用桌面客户端连接和管理图纸文件。

常见问题

DWG 预览报错「dwg2dxf not available」?

说明容器内没有 dwg2dxf(本机裸跑二进制时常见,Docker 镜像会从源码编译 libredwg)。请用 Docker 部署;转换只在首次预览时执行并缓存到 CONFIG_DIR/dxf_cache

如何备份?

备份图纸拷贝 data/ 目录(library 真实目录 + blobs 归档)即可;建议一并备份 pgdata/ 卷(目录结构、版本备注等元数据,丢了不影响图纸文件本身)。

数据库连不上?

确认 compose 中 db 容器先启动且健康(pg_isready),DATABASE_URL 的用户/密码/库名与 POSTGRES_* 一致。