Sriharsha Chintalapani a6d544a5d8
RDF Ontology, Json LD, DCAT vocabulary support by mapping OM Schemas to RDF (#22852)
* Support for RDF, SPARQL, SQL-TO-SPARQL

* Tests are working

* Add  RDF relations tests

* improve Knowledge Graph UI, tags , glossary term relations

* Lang translations

* Fix level depth querying

* Add semantic search interfaces , integration into search

* cleanup

* Update generated TypeScript types

* Fix styling

* remove duplicated ttl file

* model generator cleanup

* Update OM - DCAT vocab

* Update DataProduct Schema

* Improve JsonLD Translator

* Update generated TypeScript types

* Fix Tests

* Fix java checkstyle

* Add RDF workflows

* fix unit tests

* fix e2e

---------

Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
Co-authored-by: Chirag Madlani <12962843+chirag-madlani@users.noreply.github.com>
2025-08-17 18:36:26 -07:00

61 lines
1.8 KiB
Docker

# Multi-architecture Dockerfile for Apache Jena Fuseki
FROM eclipse-temurin:17-jre-jammy
# Fix for GPG signature issues and install dependencies
RUN apt-get update || true && \
apt-get install -y --no-install-recommends \
wget \
curl \
ca-certificates \
|| (rm -rf /var/lib/apt/lists/* && \
apt-get clean && \
apt-get update --fix-missing && \
apt-get install -y --no-install-recommends wget curl ca-certificates) && \
rm -rf /var/lib/apt/lists/*
# Set Fuseki version
ENV FUSEKI_VERSION=5.0.0
ENV FUSEKI_HOME=/fuseki
# Download and install Fuseki
RUN mkdir -p ${FUSEKI_HOME} && \
cd /tmp && \
wget -q https://archive.apache.org/dist/jena/binaries/apache-jena-fuseki-${FUSEKI_VERSION}.tar.gz && \
tar -xzf apache-jena-fuseki-${FUSEKI_VERSION}.tar.gz && \
mv apache-jena-fuseki-${FUSEKI_VERSION}/* ${FUSEKI_HOME}/ && \
rm -rf apache-jena-fuseki-${FUSEKI_VERSION}.tar.gz apache-jena-fuseki-${FUSEKI_VERSION}
# Create necessary directories
RUN mkdir -p ${FUSEKI_HOME}/run && \
mkdir -p ${FUSEKI_HOME}/databases
# Set working directory
WORKDIR ${FUSEKI_HOME}
# Expose Fuseki port
EXPOSE 3030
# Set JVM options
ENV JVM_ARGS="-Xmx4g -Xms2g"
# Create entrypoint script
RUN echo '#!/bin/bash\n\
if [ ! -z "$ADMIN_PASSWORD" ]; then\n\
echo "Setting admin password..."\n\
${FUSEKI_HOME}/fuseki-server --passwd --update /fuseki/run/shiro.ini <<EOF\n\
admin=$ADMIN_PASSWORD\n\
EOF\n\
fi\n\
\n\
# Create openmetadata database if it doesn'\''t exist\n\
mkdir -p ${FUSEKI_HOME}/databases/openmetadata\n\
\n\
# Start Fuseki\n\
exec ${FUSEKI_HOME}/fuseki-server --update --loc=${FUSEKI_HOME}/databases/openmetadata /openmetadata\n\
' > /entrypoint.sh && chmod +x /entrypoint.sh
# Volume for persistent data
VOLUME ["${FUSEKI_HOME}/databases", "${FUSEKI_HOME}/run"]
# Entrypoint
ENTRYPOINT ["/entrypoint.sh"]