Skip to content

项目运行

更新时间:2026/8/23 17:04:45

本页是运行 DaxPay 的总入口,帮你按场景选择最合适的运行方式,并给出前置依赖与启动后的验证方法。

运行方式速览

方式适用场景说明
一键部署生产部署、可视化管理DaxPay 运维面板,向导式完成部署与日常运维,推荐生产环境
项目构建二次开发、定制部署clone 源码后 mvnd / pnpm 编译,适合需要修改源码的场景
配置说明调整 Profile、端口、数据库、密钥等生产部署与凭证注入必读

推荐路径

首次接触 DaxPay 建议直接走 一键部署,向导式几分钟即可在本地跑起完整链路。

快速开始(源码跑通最短路径)

只想在本地把源码跑起来并登录进管理端,按下面六步走,每步一行命令,细节点链接进对应章节:

步骤操作命令 / 说明
① 准备中间件启动 PostgreSQL / Redis / Artemis见下方中间件准备,Compose 一键拉起或三条 docker 命令
② 建库导数据创建 daxpay-dev 库并导入初始化 SQL项目构建 - 数据库准备,顺序 table.sql → data.sql
③ 配 hostsdev 配置用 postgresql / redis / mq 主机名127.0.0.1 postgresql redis mq 追加到 hosts,详见首次启动注意
④ 启动后端mvnd spring-boot:run -Dspring-boot.run.profiles=dev项目构建 - 主应用
⑤ 启动前端pnpm install && pnpm run dev:admin项目构建 - Web 管理端
⑥ 登录访问 http://127.0.0.1:6999默认超管账号见下方启动后验证

前置依赖

环境版本要求说明
JDK25+Java 运行环境(容器化部署可不装,镜像自带)
mvnd最新Maven Daemon,加速源码编译
Node.js^22.13.0 || ^24.0.0前端构建环境
pnpm>=10.0.0包管理器(强制,禁用 npm/yarn)
PostgreSQL14+主数据库
Redis7+分布式缓存
Apache Artemis最新JMS 消息队列,用于支付延时通知

数据库需提前创建(UTF8 编码,public 模式)并导入初始化 SQL,库名约定与导入步骤见 项目构建 - 数据库准备

中间件准备

三个中间件用 Docker 拉起即可,账号密码与仓库内 application-dev.yml 默认值一致,可直接跑通。

方式一:Docker Compose(推荐)

把下面内容存为 docker-compose.yml,docker compose up -d 一键拉起:

yaml
services:
  # PostgreSQL(容器名与 dev 配置主机名 postgresql 对应)
  postgresql:
    image: postgres:14
    container_name: postgresql
    ports:
      - "5432:5432"
    environment:
      POSTGRES_DB: daxpay-dev
      POSTGRES_USER: bootx
      POSTGRES_PASSWORD: bootx123
    volumes:
      - pg-data:/var/lib/postgresql/data

  # Redis
  redis:
    image: redis:7
    container_name: redis
    ports:
      - "6379:6379"
    command: redis-server --requirepass bootx123

  # Apache Artemis(消息队列,dev 配置硬依赖,不启动则主应用无法启动)
  mq:
    image: apache/activemq-artemis:latest
    container_name: mq
    ports:
      - "8161:8161"
      - "61616:61616"
    environment:
      ARTEMIS_USER: admin
      ARTEMIS_PASSWORD: admin

volumes:
  pg-data:

方式二:三条 docker 命令

bash
# PostgreSQL(容器名与 dev 配置主机名 postgresql 对应)
docker run -d --name postgresql -p 5432:5432 \
  -e POSTGRES_DB=daxpay-dev -e POSTGRES_USER=bootx -e POSTGRES_PASSWORD=bootx123 \
  postgres:14

# Redis
docker run -d --name redis -p 6379:6379 redis:7 --requirepass bootx123

# Apache Artemis(消息队列,dev 配置硬依赖,不启动则主应用无法启动)
docker run -d --name mq -p 8161:8161 -p 61616:61616 \
  -e ARTEMIS_USER=admin -e ARTEMIS_PASSWORD=admin \
  apache/activemq-artemis:latest

已有中间件实例的,改 application-dev.yml 中的连接信息即可,不必新建。

首次启动注意

仓库内 application-dev.yml 的连接地址使用 postgresql / redis / mq 主机名(而非 localhost)。首次启动前二选一:

  • 在本机 hosts 文件追加映射(Windows 为 C:\Windows\System32\drivers\etc\hosts,Linux/macOS 为 /etc/hosts):
    127.0.0.1 postgresql redis mq
  • 或直接把 application-dev.yml 中的主机名改回 127.0.0.1 / localhost,并按实际情况修改账号密码

数据库账号默认 bootx / bootx123,Redis 密码默认 bootx123,Artemis 默认 admin / admin,与上方 docker 命令一致。

各应用端口

应用端口健康检查
主应用 dax-pay-open9999http://127.0.0.1:9999/actuator/health
通道子应用 dax-pay-channel-one20100http://127.0.0.1:20100/actuator/health
通道子应用 dax-pay-channel-two20200http://127.0.0.1:20200/actuator/health
通道子应用 dax-pay-channel-three20300http://127.0.0.1:20300/actuator/health
Web 运营端(dev)6999
Web 商户端(dev)7999
独立 H5 端(dev)9500
uni-app 管理端(H5 dev)9000
uni-app 商户端(H5 dev)9100

Go 版通道

通道子应用另有 Go 版本 dax-pay-channel-one-go,端口同为 20100,与 Java 版二选一,切勿同时启动。

启动后验证

bash
# 主应用健康检查,预期 {"status":"UP"}
curl http://localhost:9999/actuator/health

# 通道子应用
curl http://localhost:20100/actuator/health

启动成功后可访问:

  • 主应用控制台输出 应用 'dax-pay-open' 运行成功!
  • API 文档(dev):http://127.0.0.1:9999/swagger-ui/index.html
  • Web 运营端(dev):http://127.0.0.1:6999
  • Web 商户端(dev):http://127.0.0.1:7999
  • H5 端(dev):http://127.0.0.1:9500

默认登录账号

导入初始化 SQL 后,系统内置超级管理员账号:

账号bootx
密码121212
可登录端仅 Web 运营端(管理端)

超管仅限开发环境

超级管理员由 daxpay.platform.starter.auth.enable-admin 控制,dev 默认开启,prod 强制关闭。生产环境请创建自己的管理员账号,详见 配置说明 - 超级管理员

本地调试支付回调、手机访问 H5 等场景需要内网穿透,见 本地联调

跨端应用运行

管理端、商户端与收银台均通过 pnpm 调用 uni CLI。H5、三类小程序和 App 的运行工具与产物目录不同,完整流程统一见跨端应用

相关章节

  • 项目构建:各应用源码编译与产物路径(按应用分单元)
  • 跨端应用:uni-app 三端运行、构建与发布
  • 配置说明:Profile 切换、数据库、Redis、密钥与生产环境变量(按应用分单元)
  • 本地联调:内网穿透、回调域名与手机调试 H5 的联调方案

官方网站 · 基于 GNU LGPL v3.0 协议开源