42 lines
1.4 KiB
Docker
42 lines
1.4 KiB
Docker
FROM danielberteaud/java:17.24.3-5 AS builder
|
|
|
|
ARG UNIFI_VERSION=8.1.113
|
|
|
|
RUN set -euxo pipefail &&\
|
|
apk --no-cache add curl ca-certificates unzip &&\
|
|
cd /tmp &&\
|
|
curl -sSLO https://www.ubnt.com/downloads/unifi/${UNIFI_VERSION}/UniFi.unix.zip &&\
|
|
unzip UniFi.unix.zip &&\
|
|
rm -f UniFi.unix.zip &&\
|
|
ls -l &&\
|
|
rm -f UniFi/bin/mongod &&\
|
|
chown -R root:root UniFi
|
|
|
|
FROM danielberteaud/java:17.24.3-5
|
|
MAINTAINER Daniel Berteaud <dbd@ehtrace.com>
|
|
|
|
ENV JAVA_OPTS="-Djava.awt.headless=true -Dlogback.configurationFile=/opt/unifi/logback.xml --add-opens=java.base/java.io=ALL-UNNAMED --add-opens=java.base/java.lang=ALL-UNNAMED --add-opens=java.rmi/sun.rmi.transport=ALL-UNNAMED --add-opens=java.base/java.time=ALL-UNNAMED" \
|
|
TZ=Europe/Paris \
|
|
LANG=fr_FR.utf8
|
|
|
|
COPY --from=builder /tmp/UniFi /opt/unifi
|
|
COPY root/ /
|
|
RUN set -euxo pipefail &&\
|
|
apk --no-cache upgrade &&\
|
|
addgroup -g 8443 unifi &&\
|
|
adduser --system --ingroup unifi --disabled-password --uid 8443 --home /opt/unifi --shell /sbin/nologin unifi &&\
|
|
mkdir -p /data/unifi &&\
|
|
mkdir -p /data/logs &&\
|
|
chown unifi:unifi /data &&\
|
|
chmod 700 /data &&\
|
|
ln -s /data/unifi /opt/unifi/data &&\
|
|
ln -s /data/logs /opt/unifi/logs
|
|
|
|
EXPOSE 8443 8080 8843 3778
|
|
USER unifi
|
|
VOLUME /data
|
|
WORKDIR /opt/unifi
|
|
|
|
CMD ["sh", "-c", "exec java ${JAVA_OPTS} -jar /opt/unifi/lib/ace.jar start"]
|
|
|