version: "3.9" # ARM64-native Apache Jena Fuseki for RDF/Knowledge Graph storage services: fuseki: build: context: . dockerfile: Dockerfile.fuseki-simple platforms: - linux/arm64 - linux/amd64 container_name: fuseki-standalone hostname: fuseki ports: - "3030:3030" environment: # Admin credentials - ADMIN_PASSWORD=admin # JVM memory settings - adjust based on your system - JVM_ARGS=-Xmx4g -Xms2g # Fuseki configuration - FUSEKI_HOME=/fuseki volumes: # Mount directory for persistent storage (configurable via .env) - ${DOCKER_VOLUMES_PATH:-./docker-volumes}/fuseki/databases:/fuseki/databases - ${DOCKER_VOLUMES_PATH:-./docker-volumes}/fuseki/run:/fuseki/run networks: - fuseki-net healthcheck: test: ["CMD", "curl", "-f", "http://localhost:3030/$/ping"] interval: 15s timeout: 10s retries: 5 start_period: 30s deploy: resources: limits: memory: 4G reservations: memory: 2G networks: fuseki-net: driver: bridge # Usage: # 1. Create the volume directory: mkdir -p fuseki-volume/run # 2. Build and start: docker-compose -f docker-compose-fuseki-arm64.yml up -d --build # 3. Access Fuseki UI: http://localhost:3030 # 4. Login: admin/admin # 5. SPARQL endpoint: http://localhost:3030/openmetadata/sparql