feat: update Docker configuration

This commit is contained in:
Linus Rath
2026-04-28 17:27:47 +02:00
parent 81d8465a79
commit ec581ce53e
3 changed files with 22 additions and 1 deletions
+17
View File
@@ -84,6 +84,23 @@ JMAP_SERVER_URL=https://your-jmap-server.com
# volume there (see docker-compose.yml). # volume there (see docker-compose.yml).
# ADMIN_DATA_DIR=./data/admin # ADMIN_DATA_DIR=./data/admin
# =============================================================================
# Anonymous Telemetry
# =============================================================================
# Anonymous instance telemetry is enabled by default. Heartbeats contain no PII:
# version, platform, bucketed account counts, and feature toggles only. See
# https://bulwarkmail.org/docs/legal/privacy/telemetry for the full schema.
#
# Disable telemetry entirely (overrides the admin UI):
# BULWARK_TELEMETRY=off
# Directory for telemetry state: instance id, consent, login HMACs
# (default: ./data/telemetry). For Docker, the default resolves to
# /app/data/telemetry - mount a persistent volume there (see docker-compose.yml)
# so the instance id and consent choice survive upgrades.
# TELEMETRY_DATA_DIR=./data/telemetry
# ============================================================================= # =============================================================================
# Server Listen Address # Server Listen Address
# ============================================================================= # =============================================================================
+1 -1
View File
@@ -26,7 +26,7 @@ RUN apk upgrade --no-cache && \
COPY --from=builder /app/public ./public COPY --from=builder /app/public ./public
COPY --from=builder --chown=nextjs:nodejs /app/.next/standalone ./ COPY --from=builder --chown=nextjs:nodejs /app/.next/standalone ./
COPY --from=builder --chown=nextjs:nodejs /app/.next/static ./.next/static COPY --from=builder --chown=nextjs:nodejs /app/.next/static ./.next/static
RUN mkdir -p /app/data/settings /app/data/admin && chown -R nextjs:nodejs /app/data RUN mkdir -p /app/data/settings /app/data/admin /app/data/telemetry && chown -R nextjs:nodejs /app/data
USER nextjs USER nextjs
EXPOSE 3000 EXPOSE 3000
ENV PORT=3000 ENV PORT=3000
+4
View File
@@ -13,6 +13,9 @@ services:
- bulwark-settings:/app/data/settings - bulwark-settings:/app/data/settings
# Admin dashboard state: config, password hash, plugins, audit logs (ADMIN_DATA_DIR). # Admin dashboard state: config, password hash, plugins, audit logs (ADMIN_DATA_DIR).
- bulwark-admin:/app/data/admin - bulwark-admin:/app/data/admin
# Anonymous telemetry: instance id, consent state, login HMACs (TELEMETRY_DATA_DIR).
# Persisting this preserves the admin's consent choice and stable instance id across upgrades.
- bulwark-telemetry:/app/data/telemetry
healthcheck: healthcheck:
test: test:
[ [
@@ -32,3 +35,4 @@ services:
volumes: volumes:
bulwark-settings: bulwark-settings:
bulwark-admin: bulwark-admin:
bulwark-telemetry: