Jacek Kowalski
2018-05-13 294fcc89762a47a166947dc8d3d4360713ba21dc
Set mFi to initialize on first run with empty data dir
1 files modified
1 files added
35 ■■■■■ changed files
Dockerfile 18 ●●●● patch | view | raw | blame | history
run.sh 17 ●●●●● patch | view | raw | blame | history
Dockerfile
@@ -5,18 +5,30 @@
RUN apt-get update \
    && apt-get -y dist-upgrade \
    && apt-get -y install --no-install-recommends \
        wget jsvc mongodb-server binutils unzip \
        wget jsvc mongodb-server binutils procps unzip \
    && apt-get -y clean \
    && rm -Rf /var/lib/apt/lists/*
RUN cd /tmp \
    && wget "http://dl.ubnt.com/mfi/${MFI_VERSION}/mFi.unix.zip" \
    && unzip mFi.unix.zip \
    && mv /tmp/mFi /usr/lib/mfi
    && rm mFi.unix.zip \
    && mv /tmp/mFi /usr/lib/mfi \
    && cp -Rf /usr/lib/mfi/data /usr/lib/mfi/data-orig \
    && groupadd -r -g 500 mfi \
    && useradd -r -d /usr/lib/mfi -u 500 -g 500 mfi \
    && mkdir -p /var/lib/mfi \
    && chown -Rf mfi:mfi /usr/lib/mfi /var/lib/mfi
EXPOSE 6080 6443
VOLUME /usr/lib/mfi/data
WORKDIR /var/lib/mfi
CMD ["/usr/bin/java", "-Xmx1024M", "-jar", "/usr/lib/mfi/lib/ace.jar", "start"]
COPY run.sh /run.sh
CMD /run.sh
USER mfi
HEALTHCHECK --start-period=3m CMD wget -q -O /dev/null --no-check-certificate \
    https://127.0.0.1:6443/login
run.sh
New file
@@ -0,0 +1,17 @@
#!/bin/bash
if [ -z "$JAVA_OPTS" ]; then
    JAVA_OPTS="-Xmx1024m"
fi
if [ ! -f /usr/lib/mfi/data/system.properties ]; then
    cp -Rf /usr/lib/mfi/data-orig/. /usr/lib/mfi/data/
fi
if [ `id -u` -eq 0 ]; then
    chown -Rf mfi:mfi /usr/lib/mfi/data
    exec sudo -u mfi java $JAVA_OPTS -jar /usr/lib/mfi/lib/ace.jar start
else
    exec java $JAVA_OPTS -jar /usr/lib/mfi/lib/ace.jar start
fi