26 lines
1.6 KiB
Markdown
26 lines
1.6 KiB
Markdown
---
|
|
id: TASK-8
|
|
title: Deploy rcart.online to production
|
|
status: Done
|
|
assignee: []
|
|
created_date: '2026-02-15 04:15'
|
|
labels:
|
|
- devops
|
|
- deployment
|
|
- rcart
|
|
dependencies: []
|
|
priority: high
|
|
---
|
|
|
|
## Description
|
|
|
|
<!-- SECTION:DESCRIPTION:BEGIN -->
|
|
Set up rcart.online domain, Docker deployment, and database on Netcup RS 8000.
|
|
<!-- SECTION:DESCRIPTION:END -->
|
|
|
|
## Final Summary
|
|
|
|
<!-- SECTION:FINAL_SUMMARY:BEGIN -->
|
|
Deployed rcart.online (group shopping cart app) to production:\n\n**Domain Setup:**\n- Added rcart.online zone to Cloudflare (zone ID: 8e3d6fb208ee3fa6ec098812b1f5f604)\n- Porkbun nameservers already pointed to Cloudflare\n- Added CNAME records (@ and www) pointing to tunnel\n- Added rcart.online + www.rcart.online to Cloudflare tunnel config (216 entries total)\n\n**Docker Build Fixes:**\n- Fixed Dockerfile: added SDK node_modules copy step, selective source copy, dummy DATABASE_URL for prisma generate\n- Added ambient type declarations for @encryptid/sdk (server/nextjs, server, ui/react)\n- Fixed auth.ts: cast SDK claims to any for dynamic property access\n- Added 🛒 emoji favicon\n\n**Server Deployment:**\n- Cloned to /opt/websites/rcart-online on Netcup\n- Created .env with DB_PASSWORD and EncryptID URL\n- Built and started Docker containers (rcart-online + rcart-postgres)\n- Applied initial Prisma migration (6 tables: User, Space, SpaceMember, Cart, Contribution, CartEvent)\n\n**Verification:**\n- https://rcart.online/api/health returns OK\n- Homepage loads with full UI\n- Database tables created and accessible\n\nrStack now has 9 sites: rtrips, rnotes, rspace, rfiles, rwallet, rfunds, rmaps, rvote, rcart
|
|
<!-- SECTION:FINAL_SUMMARY:END -->
|