Skip to content

Commit

Permalink
Update 8.4/official to v8.4.62 - Create 8.5/beta v8.5.1 - Set latest-…
Browse files Browse the repository at this point in the history
…beta, etc. tags to 8.5/beta - Tag 8.4.62 release
  • Loading branch information
goofball222 committed Sep 11, 2024
1 parent a6be6dd commit 26efcd3
Show file tree
Hide file tree
Showing 19 changed files with 1,025 additions and 16 deletions.
Original file line number Diff line number Diff line change
@@ -1,13 +1,13 @@
name: Build 8.3 Beta
name: Build 8.5 Beta

on:
workflow_dispatch:
push:
branches:
- main
paths:
- 8.3/beta/**
- .github/workflows/build-8.3-beta.yml
- 8.5/beta/**
- .github/workflows/build-8.5-beta.yml

jobs:
build:
Expand All @@ -19,7 +19,7 @@ jobs:
-
name: Set up dynamic build ARGs
id: getargs
run: echo "version=$(cat ./8.3/beta/VERSION)" >> $GITHUB_OUTPUT
run: echo "version=$(cat ./8.5/beta/VERSION)" >> $GITHUB_OUTPUT
-
name: Set up Docker metadata for Alpine
id: meta-alpine
Expand All @@ -29,7 +29,7 @@ jobs:
${{ github.repository }}
ghcr.io/${{ github.repository }}
tags: |
type=raw,8.3-alpine-beta
type=raw,8.5-alpine-beta
labels: |
org.opencontainers.image.vendor=The Goofball - [email protected]
org.opencontainers.image.title=UniFi Controller
Expand All @@ -44,7 +44,7 @@ jobs:
${{ github.repository }}
ghcr.io/${{ github.repository }}
tags: |
type=raw,8.3-debian-beta
type=raw,8.5-debian-beta
labels: |
org.opencontainers.image.vendor=The Goofball - [email protected]
org.opencontainers.image.title=UniFi Controller
Expand All @@ -59,8 +59,8 @@ jobs:
${{ github.repository }}
ghcr.io/${{ github.repository }}
tags: |
type=raw,8.3-beta
type=raw,8.3-ubuntu-beta
type=raw,8.5-beta
type=raw,8.5-ubuntu-beta
labels: |
org.opencontainers.image.vendor=The Goofball - [email protected]
org.opencontainers.image.title=UniFi Controller
Expand Down Expand Up @@ -89,8 +89,8 @@ jobs:
name: Build and push Alpine Docker image
uses: docker/build-push-action@v6
with:
context: ./8.3/beta
file: ./8.3/beta/Dockerfile.alpine
context: ./8.5/beta
file: ./8.5/beta/Dockerfile.alpine
platforms: linux/amd64,linux/arm64
push: ${{ github.event_name != 'pull_request' }}
tags: ${{ steps.meta-alpine.outputs.tags }}
Expand All @@ -100,8 +100,8 @@ jobs:
name: Build and push Debian Docker image
uses: docker/build-push-action@v6
with:
context: ./8.3/beta
file: ./8.3/beta/Dockerfile.debian
context: ./8.5/beta
file: ./8.5/beta/Dockerfile.debian
platforms: linux/amd64
push: ${{ github.event_name != 'pull_request' }}
tags: ${{ steps.meta-debian.outputs.tags }}
Expand All @@ -111,8 +111,8 @@ jobs:
name: Build and push Ubuntu Docker image
uses: docker/build-push-action@v6
with:
context: ./8.3/beta
file: ./8.3/beta/Dockerfile
context: ./8.5/beta
file: ./8.5/beta/Dockerfile
platforms: linux/amd64,linux/arm64
push: ${{ github.event_name != 'pull_request' }}
tags: ${{ steps.meta-ubuntu.outputs.tags }}
Expand Down
66 changes: 66 additions & 0 deletions 8.5/beta/Dockerfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,66 @@
FROM ubuntu:20.04

ARG BUILD_DATE
ARG VCS_REF
ARG VERSION

LABEL \
org.opencontainers.image.vendor="The Goofball - [email protected]" \
org.opencontainers.image.url="https://github.com/goofball222/unifi" \
org.opencontainers.image.title="UniFi Controller" \
org.opencontainers.image.description="UniFi Controller" \
org.opencontainers.image.version=${VERSION}-Ubuntu \
org.opencontainers.image.source="https://github.com/goofball222/unifi" \
org.opencontainers.image.revision=${VCS_REF} \
org.opencontainers.image.created=${BUILD_DATE} \
org.opencontainers.image.licenses="Apache-2.0"

ENV \
BIND_PRIV=false \
DEBIAN_FRONTEND=noninteractive \
DEBUG=false \
JVM_EXTRA_OPTS= \
JVM_INIT_HEAP_SIZE= \
JVM_MAX_HEAP_SIZE=1024M \
PGID=999 \
PUID=999 \
RUN_CHOWN=true \
RUNAS_UID0=false

WORKDIR /usr/lib/unifi

COPY root /

RUN set -x \
&& groupadd -r unifi -g $PGID \
&& useradd --no-log-init -r -u $PUID -g $PGID unifi \
&& apt-get -qqy update \
&& apt-get -qqy install apt-utils \
&& apt-get -qqy --no-install-recommends install \
binutils curl dirmngr gosu \
libcap2 libcap2-bin procps > /dev/null \
&& apt-get -qqy --no-install-recommends install \
ca-certificates-java openjdk-17-jre-headless > /dev/null \
&& apt-get -qqy --no-install-recommends install \
mongodb-server-core > /dev/null \
&& rm -rf /usr/bin/mongos \
&& curl -sSL https://dl.ui.com/unifi/${VERSION}/unifi_sysvinit_all.deb -o /tmp/unifi-${VERSION}.deb \
&& apt-get -qqy purge \
dirmngr > /dev/null \
&& apt-get -qqy autoremove --purge > /dev/null \
&& apt-get -qqy clean autoclean > /dev/null \
&& dpkg --force-all -i /tmp/unifi-${VERSION}.deb \
&& rm -rf data logs run \
&& bash -c 'mkdir -p {data,logs,run,cert}' \
&& chown -R unifi:unifi /usr/lib/unifi \
&& rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/* /var/log/*

EXPOSE 3478/udp 6789/tcp 8080/tcp 8443/tcp 8843/tcp 8880/tcp 10001/udp

VOLUME ["/usr/lib/unifi/cert", "/usr/lib/unifi/data", "/usr/lib/unifi/logs"]

HEALTHCHECK --start-period=2m CMD /usr/local/bin/docker-healthcheck.sh

ENTRYPOINT ["docker-entrypoint.sh"]

CMD ["unifi"]
58 changes: 58 additions & 0 deletions 8.5/beta/Dockerfile.alpine
Original file line number Diff line number Diff line change
@@ -0,0 +1,58 @@
FROM alpine:latest

ARG BUILD_DATE
ARG VCS_REF
ARG VERSION

LABEL \
org.opencontainers.image.vendor="The Goofball - [email protected]" \
org.opencontainers.image.url="https://github.com/goofball222/unifi" \
org.opencontainers.image.title="UniFi Controller" \
org.opencontainers.image.description="UniFi Controller" \
org.opencontainers.image.version=${VERSION}-Alpine \
org.opencontainers.image.source="https://github.com/goofball222/unifi" \
org.opencontainers.image.revision=${VCS_REF} \
org.opencontainers.image.created=${BUILD_DATE} \
org.opencontainers.image.licenses="Apache-2.0"

ENV \
BIND_PRIV=false \
DEBUG=false \
JVM_EXTRA_OPTS= \
JVM_INIT_HEAP_SIZE= \
JVM_MAX_HEAP_SIZE=1024M \
PGID=999 \
PUID=999 \
RUN_CHOWN=true \
RUNAS_UID0=false

WORKDIR /usr/lib/unifi

COPY root /

RUN set -x \
&& delgroup ping \
&& addgroup -g $PGID unifi \
&& adduser -D -G unifi -u $PUID unifi \
&& apk add -q --no-cache \
gcompat libc6-compat \
&& apk add -q --no-cache \
bash binutils coreutils curl libcap \
openjdk17-jre openssl shadow su-exec \
tzdata \
&& curl -sSL https://dl.ui.com/unifi/${VERSION}/UniFi.unix.zip -o /tmp/UniFi.unix.${VERSION}.zip \
&& unzip -q /tmp/UniFi.unix.${VERSION}.zip -d /tmp \
&& mv /tmp/UniFi/* /usr/lib/unifi/ \
&& bash -c 'mkdir -p {data,logs,run,cert}' \
&& chown -R unifi:unifi /usr/lib/unifi \
&& rm -rf /tmp/* /var/tmp/* /var/cache/apk/*

EXPOSE 3478/udp 6789/tcp 8080/tcp 8443/tcp 8843/tcp 8880/tcp 10001/udp

VOLUME ["/usr/lib/unifi/cert", "/usr/lib/unifi/data", "/usr/lib/unifi/logs"]

HEALTHCHECK --start-period=2m CMD /usr/local/bin/docker-healthcheck.sh

ENTRYPOINT ["docker-entrypoint.sh"]

CMD ["unifi"]
60 changes: 60 additions & 0 deletions 8.5/beta/Dockerfile.alpine.mongo
Original file line number Diff line number Diff line change
@@ -0,0 +1,60 @@
FROM alpine:latest

ARG BUILD_DATE
ARG VCS_REF
ARG VERSION

LABEL \
org.opencontainers.image.vendor="The Goofball - [email protected]" \
org.opencontainers.image.url="https://github.com/goofball222/unifi" \
org.opencontainers.image.title="UniFi Controller" \
org.opencontainers.image.description="UniFi Controller" \
org.opencontainers.image.version=${VERSION}-Alpine.mongo \
org.opencontainers.image.source="https://github.com/goofball222/unifi" \
org.opencontainers.image.revision=${VCS_REF} \
org.opencontainers.image.created=${BUILD_DATE} \
org.opencontainers.image.licenses="Apache-2.0"

ENV \
BIND_PRIV=false \
DEBUG=false \
JVM_EXTRA_OPTS= \
JVM_INIT_HEAP_SIZE= \
JVM_MAX_HEAP_SIZE=1024M \
PGID=999 \
PUID=999 \
RUN_CHOWN=true \
RUNAS_UID0=false

WORKDIR /usr/lib/unifi

COPY root /

RUN set -x \
&& delgroup ping \
&& addgroup -g $PGID unifi \
&& adduser -D -G unifi -u $PUID unifi \
&& apk add -q --no-cache \
gcompat libc6-compat \
&& apk add -q --no-cache \
bash binutils coreutils curl libcap \
mongodb openjdk17-jre openssl shadow su-exec \
tzdata \
&& curl -sSL https://dl.ui.com/unifi/${VERSION}/UniFi.unix.zip -o /tmp/UniFi.unix.${VERSION}.zip \
&& unzip -q /tmp/UniFi.unix.${VERSION}.zip -d /tmp \
&& mv /tmp/UniFi/* /usr/lib/unifi/ \
&& bash -c 'mkdir -p {data,logs,run,cert}' \
&& chown -R unifi:unifi /usr/lib/unifi \
&& rm /usr/lib/unifi/bin/mongod \
&& ln -s /usr/bin/mongod /usr/lib/unifi/bin/mongod \
&& rm -rf /tmp/* /var/tmp/* /var/cache/apk/*

EXPOSE 3478/udp 6789/tcp 8080/tcp 8443/tcp 8843/tcp 8880/tcp 10001/udp

VOLUME ["/usr/lib/unifi/cert", "/usr/lib/unifi/data", "/usr/lib/unifi/logs"]

HEALTHCHECK --start-period=2m CMD /usr/local/bin/docker-healthcheck.sh

ENTRYPOINT ["docker-entrypoint.sh"]

CMD ["unifi"]
74 changes: 74 additions & 0 deletions 8.5/beta/Dockerfile.debian
Original file line number Diff line number Diff line change
@@ -0,0 +1,74 @@
FROM debian:bullseye-slim

ARG BUILD_DATE
ARG VCS_REF
ARG VERSION

LABEL \
org.opencontainers.image.vendor="The Goofball - [email protected]" \
org.opencontainers.image.url="https://github.com/goofball222/unifi" \
org.opencontainers.image.title="UniFi Controller" \
org.opencontainers.image.description="UniFi Controller" \
org.opencontainers.image.version=${VERSION}-Debian \
org.opencontainers.image.source="https://github.com/goofball222/unifi" \
org.opencontainers.image.revision=${VCS_REF} \
org.opencontainers.image.created=${BUILD_DATE} \
org.opencontainers.image.licenses="Apache-2.0"

ENV \
BIND_PRIV=false \
DEBIAN_FRONTEND=noninteractive \
DEBUG=false \
JVM_EXTRA_OPTS= \
JVM_INIT_HEAP_SIZE= \
JVM_MAX_HEAP_SIZE=1024M \
PGID=999 \
PUID=999 \
RUN_CHOWN=true \
RUNAS_UID0=false

WORKDIR /usr/lib/unifi

COPY root /

RUN set -x \
&& groupadd -r unifi -g $PGID \
&& useradd --no-log-init -r -u $PUID -g $PGID unifi \
&& mkdir -p /usr/share/man/man1 \
&& apt-get -qqy update \
&& apt-get -qqy install apt-utils \
&& apt-get -qqy --no-install-recommends install \
dirmngr gnupg2 > /dev/null \
&& apt-get -qqy --no-install-recommends install \
binutils curl gosu \
libcap2 libcap2-bin procps > /dev/null \
&& apt-get -qqy --no-install-recommends install \
ca-certificates-java > /dev/null \
&& apt-get -qqy --no-install-recommends install \
openjdk-17-jre-headless > /dev/null \
&& echo "deb http://repo.mongodb.org/apt/debian stretch/mongodb-org/3.6 main" \
> /etc/apt/sources.list.d/mongodb-org.list \
&& apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 2930ADAE8CAF5059EE73BB4B58712A2291FA4AD5 \
&& apt-get -qqy --allow-insecure-repositories update \
&& apt-get -qqy --no-install-recommends --allow-unauthenticated install \
mongodb-org-server > /dev/null \
&& curl -sSL https://dl.ui.com/unifi/${VERSION}/unifi_sysvinit_all.deb -o /tmp/unifi-${VERSION}.deb \
&& apt-get -qqy purge \
apt-utils dirmngr gnupg2 > /dev/null \
&& apt-get -qqy autoremove --purge > /dev/null \
&& apt-get -qqy clean autoclean > /dev/null \
&& dpkg --force-all -i /tmp/unifi-${VERSION}.deb \
&& rm -rf data logs run \
&& bash -c 'mkdir -p {data,logs,run,cert}' \
&& chown -R unifi:unifi /usr/lib/unifi \
&& rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/* /var/log/*

EXPOSE 3478/udp 6789/tcp 8080/tcp 8443/tcp 8843/tcp 8880/tcp 10001/udp

VOLUME ["/usr/lib/unifi/cert", "/usr/lib/unifi/data", "/usr/lib/unifi/logs"]

HEALTHCHECK --start-period=2m CMD /usr/local/bin/docker-healthcheck.sh

ENTRYPOINT ["docker-entrypoint.sh"]

CMD ["unifi"]
Loading

0 comments on commit 26efcd3

Please sign in to comment.