news 2026/9/20 9:29:16

BTCPay Server 快速上手:免费自托管比特币支付处理器的安装、启动与配置完全指南

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
BTCPay Server 快速上手:免费自托管比特币支付处理器的安装、启动与配置完全指南

BTCPay Server 快速上手:免费自托管比特币支付处理器的安装、启动与配置完全指南

【免费下载链接】btcpayserverAccept Bitcoin payments. Free, open-source & self-hosted, Bitcoin payment processor.项目地址: https://gitcode.com/GitHub_Trending/bt/btcpayserver

BTCPay Server 是一个免费、开源、自托管的比特币支付处理器,让你在没有手续费、没有中间商、没有 KYC 的情况下直接接收比特币,并支持闪电网络。这篇文章带你认识项目结构、把第一个实例跑起来,并给出一份可直接照抄的配置速查表。

快速认识项目

BTCPay Server 本质上是一个多租户的比特币收款后台:你创建门店(Store),生成发票(Invoice),买家直接链上付款,系统自动确认到账状态。它适合两类人——想自己收比特币的商家,以及想学习「发票管理 + 全节点钱包 + 闪电网络」这套完整链上业务逻辑的开发者。核心卖点就一句话:私钥完全掌握在你自己手里,非托管。

目录速览:导航地图 🗂️

仓库根目录是一个 .NET 多项目解决方案(btcpayserver.sln),几个关键位置如下:

目录/文件承担什么职责你该关心什么
BTCPayServer/主程序:控制器、服务、支付处理、插件系统、前端视图入口Program.cs就在这里
BTCPayServer.Data/数据库模型与 EF Core 迁移脚本表结构、PostgreSQL 迁移
BTCPayServer.Client/Greenfield API 的 .NET 客户端封装想用代码调 API 看这里
BTCPayServer.Abstractions/插件扩展点的接口定义开发插件前必读
BTCPayServer.Rating/汇率源实现法币换算逻辑
BTCPayServer.Tests/集成测试与开发用 docker-compose本地开发环境怎么搭
Dockerfile、Docker/容器镜像构建与容器入口脚本生产部署的参考实现
run.sh、run.ps1本地一键运行脚本Linux 用 run.sh,Windows 用 run.ps1
docs/仓库内的专题文档(如数据库迁移)完整官方文档在 BTCPay Server 官网的 Documentation 栏目

三步跑起来你的第一个实例 🚀

前置条件:按 Dockerfile 与 README 的说明,你需要 .NET SDK 10.0、一个 PostgreSQL 数据库(SQLite/MySQL 后端已停止支持,启动时会直接报错),以及一个 NBXplorer 实例来监听链上交易。

第一步,构建run.sh的实现在 run.sh:它只是进入BTCPayServer/bin/Release/publish/然后执行dotnet BTCPayServer.dll。所以你需要先发布一份产物到这个路径:

dotnet publish BTCPayServer/BTCPayServer.csproj -c Release -o BTCPayServer/bin/Release/publish

第二步,启动。先用./run.sh --help看全部命令行参数,然后带上必填项启动:

./run.sh --postgres="Host=localhost;Port=5432;Database=btcpay;Username=...;Password=..." --btcexplorerurl=http://localhost:32838

第三步,验证。BTCPayServer/Program.cs 在启动成功后会打印Now listening on: http://...,浏览器打开该地址即可访问后台。配置缺失(比如没给--postgres)时,控制台会抛出明确的Configuration error提示,照提示补参数即可。

配置体系速查表 ⚙️

BTCPay Server 的配置有三个来源,按「命令行参数 > 环境变量 > 配置文件」的优先级取用:

配置位置对应环境典型用途
命令行参数(./run.sh --xxx任意最高优先级,临时覆盖最方便
BTCPAY_前缀环境变量(如BTCPAY_POSTGRESBTCPAY_DATADIR容器部署最常用Dockerfile 里就是靠ENV BTCPAY_DATADIR=/datadir指定数据目录
数据目录下的配置文件常驻运行首次启动自动生成带注释的模板,涵盖networkportbindpostgresbtc.explorer.urlbtc.lightning等项
appsettings.dev.json仅 DEBUG 构建开发期补充配置,见Program.cs

常用参数速查:-n | --network切换 mainnet/testnet/regtest;--rootpath改 URL 根路径;--btcexplorerurl指向 NBXplorer;--btclightning接入 c-lightning 或 Charge;--debuglog+--debugloglevel开滚动日志;--disable-registration(默认 true)控制是否允许注册新用户。全部参数清单直接跑./run.sh --help就能看到,定义在 BTCPayServer/Configuration/DefaultConfiguration.cs。

新手避坑与下一步 💡

  • 别再用 SQLite/MySQL:指定SQLITEFILEMYSQL会直接抛ConfigException,提示按 docs/db-migration.md 迁移到 Postgres;老实例可加--deprecated强行启动。
  • cheatmode 只能用于测试网--cheatmode在 mainnet 下会被拒绝启动。
  • run.sh 找不到 dll:如果你没执行过 publish 就运行 run.sh,会报文件不存在——它要求产物在BTCPayServer/bin/Release/publish/
  • 下一步:想搭完整开发环境(含 regtest 测试链),看 BTCPayServer.Tests/README.md;想写插件,从BTCPayServer.Abstractions/的扩展接口和 docs/greenfield-development.md 入手。

【免费下载链接】btcpayserverAccept Bitcoin payments. Free, open-source & self-hosted, Bitcoin payment processor.项目地址: https://gitcode.com/GitHub_Trending/bt/btcpayserver

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/9/20 9:29:10

ComfyUI-Workflows-ZHO:16 个即插即用的 AI 绘图工作流合集

ComfyUI-Workflows-ZHO:16 个即插即用的 AI 绘图工作流合集 【免费下载链接】ComfyUI-Workflows-ZHO 我的 ComfyUI 工作流合集 | My ComfyUI workflows collection 项目地址: https://gitcode.com/GitHub_Trending/co/ComfyUI-Workflows-ZHO ComfyUI-Workflo…

作者头像 李华
网站建设 2026/9/20 9:28:22

羽毛球目标检测数据集实战:从YOLO训练到三格式转换

1. 一个人工智能项目,为什么非要从“数据集”讲起拿到这个标题的时候,我第一个反应是:这不就是又一份“标注好的目标检测数据集”吗?但仔细一看,2879张图、识别率84.4%、三格式全支持(yolo、coco json、voc…

作者头像 李华
网站建设 2026/9/20 9:24:24

Claude Code官方安装脚本全解析:从零安装到权限配置

最近把主力终端工作流换成了 Claude Code,从安装到日常使用折腾了差不多一个礼拜。网上关于 Claude Code 的讨论很多,但大多停留在“一句话装完”的层面,真正把官方安装脚本、环境依赖、登录授权、权限设置、升级卸载这些环节讲透的内容不多。…

作者头像 李华
网站建设 2026/9/20 9:23:37

C++模板编程:从基础到进阶实战指南

1. 模板编程的核心价值在C开发中,模板是构建通用代码的基石。我至今记得第一次用模板重构重复代码时的震撼——原本需要维护多个相似函数的场景,现在只需要一个模板函数就能搞定。这种抽象能力不仅减少了代码量,更重要的是提升了代码的可维护…

作者头像 李华
网站建设 2026/9/20 9:22:50

easy-vibe API 设计原理:前后端通信协议与 RESTful 实战指南

easy-vibe API 设计原理:前后端通信协议与 RESTful 实战指南 【免费下载链接】easy-vibe 从 0 到 1 学会 vibe coding,项目制学习 项目地址: https://gitcode.com/datawhalechina/easy-vibe 本文是 easy-vibe 项目"从 0 到 1 学会 vibe codin…

作者头像 李华