|
| 1 | +FROM openjdk:8-jre-slim |
| 2 | + |
| 3 | +ENV ONGDB_SHA256=ac90ab1f8079c42bd14056eabf1f268fe9b27e190e3982ece4bee0780eb3c5be \ |
| 4 | + ONGDB_TARBALL=ongdb-community-1.0.0-alpha01-unix.tar.gz \ |
| 5 | + ONGDB_EDITION=community \ |
| 6 | + ONGDB_HOME="/var/lib/ongdb" \ |
| 7 | + TINI_VERSION="v0.19.0" \ |
| 8 | + TINI_SHA256="93dcc18adc78c65a028a84799ecf8ad40c936fdfc5f2a57b1acda5a8117fa82c" |
| 9 | +ARG ONGDB_URI=http://cdn.graphfoundation.org/ongdb/dist/ongdb-community-1.0.0-alpha01-unix.tar.gz |
| 10 | + |
| 11 | +RUN addgroup --system ongdb && adduser --system --no-create-home --home "${ONGDB_HOME}" --ingroup ongdb ongdb |
| 12 | + |
| 13 | +COPY ./local-package/* /tmp/ |
| 14 | + |
| 15 | +RUN apt update \ |
| 16 | + && apt install -y curl wget gosu jq \ |
| 17 | + && curl -L --fail --silent --show-error "https://github.com/krallin/tini/releases/download/${TINI_VERSION}/tini" > /sbin/tini \ |
| 18 | + && echo "${TINI_SHA256} /sbin/tini" | sha256sum -c --strict --quiet \ |
| 19 | + && chmod +x /sbin/tini \ |
| 20 | + && curl --fail --silent --show-error --location --remote-name ${ONGDB_URI} \ |
| 21 | + && echo "${ONGDB_SHA256} ${ONGDB_TARBALL}" | sha256sum -c --strict --quiet \ |
| 22 | + && tar --extract --file ${ONGDB_TARBALL} --directory /var/lib \ |
| 23 | + && mv /var/lib/ongdb-* "${ONGDB_HOME}" \ |
| 24 | + && rm ${ONGDB_TARBALL} \ |
| 25 | + && mv "${ONGDB_HOME}"/data /data \ |
| 26 | + && mv "${ONGDB_HOME}"/logs /logs \ |
| 27 | + && chown -R ongdb:ongdb /data \ |
| 28 | + && chmod -R 777 /data \ |
| 29 | + && chown -R ongdb:ongdb /logs \ |
| 30 | + && chmod -R 777 /logs \ |
| 31 | + && chown -R ongdb:ongdb "${ONGDB_HOME}" \ |
| 32 | + && chmod -R 777 "${ONGDB_HOME}" \ |
| 33 | + && ln -s /data "${ONGDB_HOME}"/data \ |
| 34 | + && ln -s /logs "${ONGDB_HOME}"/logs \ |
| 35 | + && mv /tmp/ongdb-plugins.json /ongdb-plugins.json \ |
| 36 | + && rm -rf /tmp/* \ |
| 37 | + && rm -rf /var/lib/apt/lists/* \ |
| 38 | + && apt-get -y purge --auto-remove curl |
| 39 | + |
| 40 | +ENV PATH "${ONGDB_HOME}"/bin:$PATH |
| 41 | + |
| 42 | +WORKDIR "${ONGDB_HOME}" |
| 43 | + |
| 44 | +VOLUME /data /logs |
| 45 | + |
| 46 | +COPY docker-entrypoint.sh /docker-entrypoint.sh |
| 47 | + |
| 48 | +EXPOSE 7474 7473 7687 |
| 49 | + |
| 50 | +ENTRYPOINT ["/sbin/tini", "-g", "--", "/docker-entrypoint.sh"] |
| 51 | +CMD ["ongdb"] |
0 commit comments