- App UIs now use the real registry shells with dummy data: bitcoin-ui for
Bitcoin Core (Satoshi subversion) and Bitcoin Knots (Knots subversion) via
per-path /app/bitcoin-{core,knots}/bitcoin-status; the real lnd-ui (mock
/proxy/lnd/v1/getinfo+channels, /lnd-connect-info, /api/container/logs); the
static fedimint-ui. ElectrumX already on the real electrs-ui. Custom mock UIs
dropped — accurate UX.
- IndeeHub loads in the iframe: nginx reverse-proxies /app/indeedhub/ →
indee.tx1138.com and strips X-Frame-Options/CSP (it blocked framing before).
- Mempool opens in a new tab (mempool.space can't be iframed).
- Cloud media playback: HTTP Range support in the curated-file server so audio/
video can stream and seek (needs real files dropped into demo/files/).
- Dockerfile/.dockerignore copy docker/lnd-ui + docker/fedimint-ui.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
34 lines
1017 B
Docker
34 lines
1017 B
Docker
FROM node:22-alpine
|
|
|
|
WORKDIR /app
|
|
|
|
# Install runtime dependencies
|
|
RUN apk add --no-cache wget curl docker-cli
|
|
|
|
# Copy package files
|
|
COPY neode-ui/package*.json ./
|
|
|
|
# Install Node dependencies (need all deps for mock backend)
|
|
RUN npm install
|
|
|
|
# Copy application code
|
|
COPY neode-ui/ ./
|
|
|
|
# Sibling assets the mock backend reads relative to /app (../docker, ../demo):
|
|
# the Bitcoin UI mock shell and any curated cloud files dropped into demo/files.
|
|
COPY docker/bitcoin-ui /docker/bitcoin-ui
|
|
COPY docker/electrs-ui /docker/electrs-ui
|
|
COPY docker/lnd-ui /docker/lnd-ui
|
|
COPY docker/fedimint-ui /docker/fedimint-ui
|
|
COPY demo/files /demo/files
|
|
|
|
# Expose port
|
|
EXPOSE 5959
|
|
|
|
# Health check
|
|
HEALTHCHECK --interval=30s --timeout=15s --retries=5 --start-period=180s \
|
|
CMD wget --quiet --tries=1 --spider http://localhost:5959/health || exit 1
|
|
|
|
# Start the mock backend with error handling
|
|
CMD ["sh", "-c", "node mock-backend.js 2>&1 || (echo 'ERROR: Backend failed to start'; cat /app/package.json; ls -la /app; sleep infinity)"]
|