mongodb/Dockerfile
2018-10-26 13:00:12 +01:00

56 lines
1.8 KiB
Docker

FROM registry.fedoraproject.org/f27/s2i-base:latest
ENV NAME=mongodb \
VERSION=0 \
ARCH=x86_64
ENV SUMMARY="MongoDB NoSQL database server" \
DESCRIPTION="MongoDB (from humongous) is a free and open-source \
cross-platform document-oriented database program. Classified as a NoSQL \
database program, MongoDB uses JSON-like documents with schemas. This \
container image contains programs to run mongod server."
LABEL summary="$SUMMARY" \
description="$DESCRIPTION" \
io.k8s.description="$DESCRIPTION" \
io.k8s.display-name="MongoDB 3.4" \
io.openshift.expose-services="27017:mongodb" \
io.openshift.tags="database,mongodb" \
com.redhat.component="$NAME" \
name="$FGC/$NAME" \
usage="docker run -d -e MONGODB_ADMIN_PASSWORD=my_pass $FGC/$NAME" \
version="$VERSION" \
maintainer="SoftwareCollections.org <sclorg@redhat.com>"
ENV MONGODB_VERSION=3.4 \
# Set paths to avoid hard-coding them in scripts.
APP_DATA=/opt/app-root/src \
HOME=/var/lib/mongodb \
CONTAINER_SCRIPTS_PATH=/usr/share/container-scripts/mongodb
EXPOSE 27017
ENTRYPOINT ["container-entrypoint"]
CMD ["run-mongod"]
RUN INSTALL_PKGS="bind-utils gettext iproute rsync tar hostname findutils shadow-utils mongodb mongodb-server mongo-tools groff-base" && \
dnf install -y --setopt=tsflags=nodocs $INSTALL_PKGS && \
rpm -V $INSTALL_PKGS && \
dnf clean all
COPY s2i/bin/ $STI_SCRIPTS_PATH
COPY root /
# Container setup
RUN : > /etc/mongod.conf && \
mkdir -p ${HOME}/data && \
# Set owner 'mongodb:0' and 'g+rw(x)' permission - to avoid problems running container with arbitrary UID
/usr/libexec/fix-permissions /etc/mongod.conf ${CONTAINER_SCRIPTS_PATH}/mongod.conf.template \
${HOME} ${APP_DATA}/.. && \
usermod -a -G root mongodb
VOLUME ["/var/lib/mongodb/data"]
USER 184