Adds a PocketBase-backed marketplace where users can share custom widgets and CSS themes. Includes a Docusaurus storefront with GitHub OAuth login, submission/voting/comments, and a PocketBase SQL view that computes author names, vote counts, and comment counts without fragile hooks. The Next.js app gets a modal browser for one-click install from the marketplace plus clipboard paste-to-import on the custom widgets pages.
31 lines
821 B
YAML
31 lines
821 B
YAML
services:
|
|
pocketbase:
|
|
image: ghcr.io/muchobien/pocketbase:latest
|
|
container_name: homarr-store
|
|
restart: unless-stopped
|
|
environment:
|
|
PB_HOST: 0.0.0.0
|
|
PB_PORT: 8090
|
|
PB_ADMIN_EMAIL: ${PB_ADMIN_EMAIL:-}
|
|
PB_ADMIN_PASSWORD: ${PB_ADMIN_PASSWORD:-}
|
|
GITHUB_CLIENT_ID: ${GITHUB_CLIENT_ID:-}
|
|
GITHUB_CLIENT_SECRET: ${GITHUB_CLIENT_SECRET:-}
|
|
ports:
|
|
- "${PB_EXPOSE_PORT:-8090}:8090"
|
|
command:
|
|
- --migrationsDir
|
|
- /pb_migrations
|
|
volumes:
|
|
- pb_data:/pb_data
|
|
- ./pb_migrations:/pb_migrations
|
|
- ./pb_hooks:/pb_hooks
|
|
healthcheck:
|
|
test: ["CMD", "wget", "--no-verbose", "--tries=1", "--spider", "http://localhost:8090/api/health"]
|
|
interval: 30s
|
|
timeout: 10s
|
|
retries: 3
|
|
start_period: 20s
|
|
|
|
volumes:
|
|
pb_data:
|