Files
WishNinja/docker-compose.yml
T
Jim BassoandClaude Opus 4.8 7dee999759
Build & Push Docker image / test (push) Failing after 1m33s
Build & Push Docker image / docker (push) Has been skipped
Initial build: WishNinja self-hosted gift wishlist manager
ASP.NET Core Blazor (.NET 10) + EF Core/SQLite + Identity. Features:
- Wishlists & items with local image storage (upload, clipboard paste,
  or URL fetched and stored locally)
- Owner-hidden claims (enforced at the query layer) to preserve surprises
- Admin-invite-only onboarding with email-based password resets
- All state under /data; ships as a single Docker image

Includes Dockerfile, docker-compose, Gitea Actions CI (test + push image),
Unraid template, and xUnit tests (claim privacy, invite lifecycle, image validation).

Co-Authored-By: Claude Opus 4.8 <[email protected]>
2026-06-10 15:57:42 -05:00

30 lines
1.1 KiB
YAML

services:
wishninja:
build: .
# For Unraid, replace `build: .` with your published image, e.g.:
# image: gitea.example.com/youruser/wishninja:latest
container_name: wishninja
restart: unless-stopped
ports:
- "8080:8080"
volumes:
# SQLite db, uploaded images and data-protection keys all live here.
- ./data:/data
environment:
# Public URL — used to build links in invite / password-reset emails.
WishNinja__BaseUrl: "http://localhost:8080"
# First-run bootstrap admin (only used if the account doesn't already exist).
SEED_ADMIN_EMAIL: "[email protected]"
SEED_ADMIN_PASSWORD: "ChangeMe!2345"
# SMTP for password-reset and invite emails. Leave Host empty to log emails
# instead of sending them (invite links are also shown in the admin UI).
WishNinja__Smtp__Host: ""
WishNinja__Smtp__Port: "587"
WishNinja__Smtp__UseStartTls: "true"
WishNinja__Smtp__User: ""
WishNinja__Smtp__Password: ""
WishNinja__Smtp__FromAddress: "[email protected]"
WishNinja__Smtp__FromName: "WishNinja"