为什么选择开源平台CoopCycle:自托管点餐与自行车快递配送完整入门

📅 2026/8/22 15:53:05
为什么选择开源平台CoopCycle:自托管点餐与自行车快递配送完整入门
为什么选择开源平台CoopCycle自托管点餐与自行车快递配送完整入门【免费下载链接】coopcycle-webLogistics marketplace platform. Only for worker-owned business.项目地址: https://gitcode.com/gh_mirrors/co/coopcycle-webCoopCycle 是一个免费开源、可自托管的本地生活平台专为合作社co-op设计让社区居民在线点餐、由骑自行车的快递员完成配送。与 UberEats、Deliveroo 等商业平台最大的不同在于这套软件由快递员自己拥有和运营数据与利润都留在本地社区。本文带你从零了解 CoopCycle 的核心功能、技术架构并在本地跑起一个属于自己的点餐配送平台。为什么选择 CoopCycle3 个核心理由 对比维度商业外卖平台CoopCycle 开源平台平台归属资本方所有快递员/合作社自持数据存储第三方云端自托管数据本地化定制能力受限于官方功能完全开源可自由改造授权费用抽成高开源免费Coopyleft 许可1. 数据自主可控所有订单、用户、财务数据都保存在你自己的服务器上随时可迁移、可备份。2. 社区共治模式项目鼓励每个城市的快递员组成合作社独立运营本城市的平台实例实现服务去中心化。3. 全栈开源可定制从网页端、REST API 到派单算法全部开源你可以按本地法规、税务、支付习惯自由调整。核心功能一览 1. 本地餐厅点餐Food Tech平台内置完整的餐厅菜单、购物车与在线支付流程餐厅可上架菜品、设置营业时间与营业区支持 Stripe 信用卡支付与多种本地支付方式可与餐厅 POS 系统对接例如 Zelty 集成 会实时同步菜单目录并把顾客订单推送到厨房 POS 终端订单处理逻辑有完整的端到端测试覆盖参见 features/foodtech.feature。2. 自行车快递智能派单Dispatch这是 CoopCycle 的灵魂功能——内置自动派单算法管理员创建任务列表TaskList系统自动把任务匹配给最合适的快递员基于 OSRM/Valhalla 骑行路网计算真实骑行路线与耗时而非直线距离快递员通过 WebSocket 实时收到新订单推送派单权限与流程均有自动化测试保障参见 features/dispatch.feature。3. 配送区域Zone可视化配置你可以用地图手绘多边形圈定配送范围精确到街区支持在地图上直接绘制多边形或导入 GeoJSON / KML / CSV 等格式文件批量导入区域数据项目自带示例fixtures/woopit_zone.geojson。4. 现代技术架构整个平台由 SymfonyPHP后端、Node.js 实时 API、PostgreSQL Redis 存储组成另含 Cube.js ClickHouse 分析层REST APIPHP面向顾客端的餐厅浏览、下单、支付接口WebSocket APINode.js面向快递员端的实时订单推送数据库层PostgreSQL 主库 Redis 缓存/消息队列BI 分析层cube/ 目录下定义了订单、任务、用户等 Cube 模型配套 ClickHouse 做大规模数据分析。快速上手3 步自托管部署指南 ️第 1 步准备 Docker 环境只需安装Docker与Docker ComposeWindows 用户请使用 WSL 2 环境无需单独安装 PHP、Node.js、PostgreSQL——所有依赖都以容器方式声明在 docker-compose.yml 中包含postgres、redis、osrm骑行路径引擎、nginx、php_worker异步消息处理等 20 多个开箱即用的服务。然后获取代码仓库git clone https://gitcode.com/gh_mirrors/co/coopcycle-web cd coopcycle-web第 2 步启动容器cp .env.dist .env touch .env.test.local docker compose up第 3 步初始化数据库与演示数据项目通过 Makefile 封装了一键安装命令make install该命令会自动创建数据库表结构、初始化 Typesense 搜索引擎并为 OSRM 构建本地骑行路网索引。完成后访问http://localhost即可打开你的 CoopCycle 平台。小贴士若需要更完整的初始化含演示数据执行make setup数据库结构变更后用make migrations-migrate应用迁移全部迁移脚本位于 app/DoctrineMigrations/。平台还能做什么仓库与门店管理多仓库、多门店的库存与订单流转见 features/warehouses.feature、features/stores.feature灵活定价规则按距离、时段等条件自定义配送费测试用例见 features/pricing_rules.feature电子发票支持对接 Odoo 生成发票见 features/invoicing.featureWebhook 开放平台第三方系统可订阅订单、任务事件见 features/webhooks.feature多语言支持翻译文件覆盖 20 种语言位于 translations/。测试与贡献 ‍CoopCycle 的测试体系非常完整新手也能快速参与贡献指南见 CONTRIBUTING.mdmake phpunit # PHP 单元测试 make behat # API 行为测试Gherkin 格式见 features/ 目录 make cypress # 浏览器端到端测试 make jest # 前端单元测试遇到问题可直接提 issue 或 PR维护者非常欢迎新贡献者。授权说明Coopyleft 许可 ⚖️CoopCycle 采用Coopyleft License合作共享许可使用前提是两个条件你的组织符合所在国或欧盟对社会与公共企业/合作社的法律定义你采用工人作为员工的合作社经营模式。换句话说它不是任何人可商用的普通开源协议而是专为劳动者所有制企业保留的软件——这正是项目去中心化、反平台垄断理念的体现。常见问题 FAQ ❓Q1CoopCycle 适合个人用户部署吗平台功能面向合作社运营者管理员 快递员 餐厅三方角色个人开发者可部署用于学习和二次开发正式运营需符合授权条件。Q2不配置任何 API Key 能跑起来吗可以。地址自动补全、地理编码LocationIQ、Geocode Earth、OpenCage均为可选配置不配置时核心点餐与派单功能仍可用。Q3生产环境部署要注意什么建议先阅读 Makefile 中各命令了解服务组成再参考 README.md 的环境变量说明为 PostgreSQL、Redis、MinIO对象存储存放用户上传图片做好备份策略。总结 CoopCycle 证明了本地生活平台不必被少数巨头垄断。凭借自托管数据主权、自行车绿色配送与合作社共治模式它为城市社区提供了一套完整、可落地、可生长的开源解决方案。现在就可以用 3 条命令在自己的服务器上点亮第一盏社区自己的外卖平台。【免费下载链接】coopcycle-webLogistics marketplace platform. Only for worker-owned business.项目地址: https://gitcode.com/gh_mirrors/co/coopcycle-web创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考