-
Notifications
You must be signed in to change notification settings - Fork 0
/
Dockerfile-alpine
executable file
·40 lines (33 loc) · 1.39 KB
/
Dockerfile-alpine
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
FROM python:3.12.6-alpine3.20
# Define environment variables
ENV METADATA_ENDPOINT="http://localhost:9000/sparql" \
METADATA_ENDPOINT_UPDTAE="http://localhost:9000/sparql-auth" \
METADATA_ENDPOINT_USER="dba" \
METADATA_ENDPOINT_PASSWORD="dba" \
DEFAULT_GRAPH="http://ontario.tib.eu" \
APP_PREFIX="/" \
VIRT_HTTPSERVER_SERVERPORT="9000" \
VIRT_URIQA_DEFAULTHOST="localhost:9000" \
VIRT_PARAMETERS_NUMBEROFBUFFERS="340000" \
VIRT_PARAMETERS_MAXDIRTYBUFFERS="250000" \
VIRT_PARAMETERS_MAXQUERYMEM="2G" \
VIRTUOSO_HOME="/opt/virtuoso-opensource"
# Set up prerequisites
COPY --from=prohde/virtuoso-opensource-7:7.2.13-alpine /opt/virtuoso-opensource /opt/virtuoso-opensource
RUN ln -s /opt/virtuoso-opensource/database /database &&\
ln -s /opt/virtuoso-opensource/bin/virtuoso-entrypoint.sh /virtuoso-entrypoint.sh &&\
addgroup -S virtuoso &&\
adduser -D -S -G virtuoso virtuoso &&\
chown -R virtuoso:virtuoso /opt/virtuoso-opensource &&\
apk add --no-cache bash libldap libstdc++ curl
# Set the working directory to /FedSDM
WORKDIR /FedSDM
VOLUME /database
VOLUME /FedSDM/instance
COPY . /FedSDM
# Install any needed packages specified in requirements.txt
RUN python -m pip install --upgrade pip==24.3.* &&\
python -m pip install --no-cache-dir -r /FedSDM/requirements.txt
EXPOSE 5003 9000
# Run Virtuoso and Flask
ENTRYPOINT ["/FedSDM/start-fedsdm.sh"]