Sign inSign up

conceptkernel/jena-fuseki

By conceptkernel

β€’Updated 6 months ago

Optimized Apache Jena Fuseki SPARQL server - lightweight, secure, multi-arch container

Image
1

2.2K

conceptkernel/jena-fuseki repository overview

⁠Apache Jena Fuseki - Optimized Docker Image

The fastest, lightest, and most efficient Apache Jena Fuseki SPARQL server container.

β πŸš€ Quick Start

# Pull and run
docker pull conceptkernel/jena-fuseki:latest
docker run -p 3030:3030 conceptkernel/jena-fuseki:latest

# Access Fuseki UI
open http://localhost:3030

⁠✨ Why This Image?

  • βœ… 50% smaller than alternatives (~150MB vs ~350MB)
  • βœ… Multi-arch support (amd64 + arm64)
  • βœ… Latest Apache Jena Fuseki 6.0.0
  • βœ… Inference support (RDFS, OWL reasoners)
  • βœ… Extensions auto-download (text search, GeoSPARQL, SHACL, ShEx)
  • βœ… Kubernetes ready with Helm chart
  • βœ… Production-ready with health checks
  • βœ… Secure - runs as non-root user
  • βœ… Fast - optimized with jlink minimal JDK

β πŸ“¦ Available Tags

TagDescription
latestLatest stable release
6.0.0, 5.6, 5Specific version
5.6.0, 5.6, 5Previous versions

β πŸ”§ Usage

⁠Basic
docker run -p 3030:3030 conceptkernel/jena-fuseki:latest
⁠With Persistent Data
docker run -p 3030:3030 \
  -v fuseki-data:/fuseki/databases \
  conceptkernel/jena-fuseki:latest
⁠Custom Memory Settings
docker run -p 3030:3030 \
  -e JAVA_OPTIONS="-Xmx4g -Xms2g" \
  conceptkernel/jena-fuseki:latest

⁠🐳 Docker Compose

version: '3.8'
services:
  fuseki:
    image: conceptkernel/jena-fuseki:latest
    ports:
      - "3030:3030"
    volumes:
      - fuseki-data:/fuseki/databases
    environment:
      - JAVA_OPTIONS=-Xmx4g -Xms2g
    restart: unless-stopped

volumes:
  fuseki-data:

β πŸ“Š SPARQL Endpoints

Once running, Fuseki provides:

  • UI: http://localhost:3030
  • Query: http://localhost:3030/dataset/query
  • Update: http://localhost:3030/dataset/update
  • Data: http://localhost:3030/dataset/data
  • Admin: http://localhost:3030/$/datasets

β πŸ” Example Queries

⁠Query Data
curl -X POST http://localhost:3030/dataset/query \
  -H "Content-Type: application/sparql-query" \
  --data 'SELECT * WHERE { ?s ?p ?o } LIMIT 10'
⁠Insert Data
curl -X POST http://localhost:3030/dataset/update \
  -H "Content-Type: application/sparql-update" \
  --data 'INSERT DATA { <http://example.org/subject> <http://example.org/predicate> "object" }'
⁠Load RDF File
curl -X POST http://localhost:3030/dataset/data \
  -H "Content-Type: text/turtle" \
  --data-binary @data.ttl

β βš™οΈ Configuration

⁠Environment Variables
  • JAVA_OPTIONS: JVM settings (default: -Xmx2048m -Xms2048m)
⁠Volumes
  • /fuseki/databases - Persistent RDF databases
  • /fuseki/backups - Database backups
  • /fuseki/configuration - Configuration files
  • /fuseki/logs - Application logs

⁠☸️ Kubernetes Deployment

Deploy to Kubernetes with the ConceptKernel Helm chart:

# Install from OCI registry
helm install fuseki oci://ghcr.io/conceptkernel/charts/jena-fuseki --version 2.0.0

# Or from source
git clone https://github.com/ConceptKernel/jena-fuseki-dockerfile.git
helm install fuseki ./jena-fuseki-dockerfile/helm/jena-fuseki

Features: Gateway API, Ingress, PersistentVolumes, inference, extensions, and more.

β πŸ—οΈ Image Details

  • Base: Alpine Linux 3.21
  • Java: Custom JDK 21 (jlink optimized)
  • Jena Version: 6.0.0
  • User: fuseki:fuseki (UID/GID 1000)
  • Platforms: linux/amd64, linux/arm64

β πŸ“ License

Apache License 2.0


Maintained by ConceptKernel⁠ β€’ Built with ❀️

Tag summary

Content type

Image

Digest

sha256:04c1bd906…

Size

140.5 MB

Last updated

6 months ago

docker pull conceptkernel/jena-fuseki