60b86be706
check-rebuild-needed.sh war seit Mai funktionsfähig nur fuer 3 von 10
Containern. Die anderen 7 Dockerfiles hatten kein ARG/ENV BUILD_SHA und
docker-compose.yml hat fuer KEINEN Service den Wert durchgereicht — daher
defaultete BUILD_SHA ueberall auf "unknown" und die Drift-Check war
zahnlos.
- ARG BUILD_SHA + ENV BUILD_SHA in 8 zusaetzlichen Dockerfiles
(ai-compliance-sdk, developer-portal, document-crawler, dsms-gateway,
compliance-tts-service, docs-src, docs-site, dsms-node)
- docker-compose.yml: BUILD_SHA: \${BUILD_SHA:-unknown} in jedem build:
Block (10 Services)
- .gitea/workflows/ci.yaml: neuer Job build-sha-integrity validiert dass
jedes Dockerfile ARG+ENV hat und jeder compose-build den Arg durchreicht.
Faellt bei jedem PR/Push gegen master, der einen neuen Service oder
Dockerfile ohne BUILD_SHA einfuehrt.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
36 lines
958 B
Docker
36 lines
958 B
Docker
# DSMS Node - Dezentrales Daten Speicher System
|
|
# Basiert auf IPFS für BreakPilot PWA
|
|
|
|
FROM ipfs/kubo:v0.24.0
|
|
|
|
LABEL maintainer="BreakPilot <dev@breakpilot.app>"
|
|
LABEL description="DSMS Node for BreakPilot - Decentralized Storage System"
|
|
|
|
# Environment variables
|
|
ENV IPFS_PATH=/data/ipfs
|
|
ENV IPFS_PROFILE=server
|
|
|
|
# Expose ports
|
|
# 4001 - Swarm (P2P)
|
|
# 5001 - API
|
|
# 8080 - Gateway
|
|
ARG BUILD_SHA="unknown"
|
|
ENV BUILD_SHA=${BUILD_SHA}
|
|
|
|
EXPOSE 4001
|
|
EXPOSE 5001
|
|
EXPOSE 8080
|
|
|
|
# Copy initialization script with correct permissions for ipfs user
|
|
USER root
|
|
COPY init-dsms.sh /container-init.d/001-init-dsms.sh
|
|
RUN chmod 755 /container-init.d/001-init-dsms.sh && chown 1000:users /container-init.d/001-init-dsms.sh
|
|
USER ipfs
|
|
|
|
# Health check - use ipfs id which works for standalone node
|
|
HEALTHCHECK --interval=30s --timeout=10s --start-period=60s --retries=3 \
|
|
CMD ipfs id > /dev/null 2>&1 || exit 1
|
|
|
|
# Default command
|
|
CMD ["daemon", "--migrate=true", "--enable-gc"]
|