cloudron-netbird (sha256:7d6d4952606a77ffbbe2f749aa4a3dade9a4cc4aa209bec2fd2a75243cc14107)

Published 2026-09-11 15:14:02 +00:00 by timconsidine in cca/cloudron-netbird

Installation

docker pull forgejo.tcjc.uk/cca/cloudron-netbird@sha256:7d6d4952606a77ffbbe2f749aa4a3dade9a4cc4aa209bec2fd2a75243cc14107
sha256:7d6d4952606a77ffbbe2f749aa4a3dade9a4cc4aa209bec2fd2a75243cc14107

Image layers

ARG RELEASE
ARG LAUNCHPAD_BUILD_ARCH
LABEL org.opencontainers.image.version=24.04
ADD file:d938ff3d4eee15d8600de84bf85eac6ecd0f20bc92dfe305dafbff0bdc974c0f in /
CMD ["/bin/bash"]
ENV DEBIAN_FRONTEND=noninteractive
RUN /bin/sh -c echo 'Acquire::http {No-Cache=True;};' > /etc/apt/apt.conf.d/no-cache && echo 'APT::Install-Recommends "0"; APT::Install-Suggests "0";' > /etc/apt/apt.conf.d/01norecommend && echo 'Dir::Cache { srcpkgcache ""; pkgcache ""; }' > /etc/apt/apt.conf.d/02nocache && echo 'Acquire::GzipIndexes "true"; Acquire::CompressionTypes::Order:: "gz";' > /etc/apt/apt.conf.d/02compress-indexes # buildkit
SHELL [/bin/bash -c]
RUN /bin/bash -c apt -y update && apt -y --no-install-recommends install ca-certificates curl dirmngr git gpg gpg-agent wget unzip zip software-properties-common build-essential make gcc g++ sudo cron dos2unix tini attr && curl -fsSL https://packages.redis.io/gpg | sudo gpg --dearmor -o /usr/share/keyrings/redis-archive-keyring.gpg && echo "deb [signed-by=/usr/share/keyrings/redis-archive-keyring.gpg] https://packages.redis.io/deb $(lsb_release -cs) main" | sudo tee /etc/apt/sources.list.d/redis.list && apt -y update && apt -y --no-install-recommends install supervisor dumb-init iputils-ping telnet netcat-openbsd lsof net-tools openssl dnsutils rsync bind9-host stress pv fio iotop nethogs crudini xmlstarlet moreutils jq pwgen swaks vim nano cmake pkg-config openssh-client uuid less zip file apache2 libapache2-mod-perl2 apache2-dev nginx-full optipng pngquant jpegoptim sqlite3 mysql-client-8.0 redis-tools postgresql-client-16 ldap-utils gettext imagemagick graphicsmagick libcurl4 libcurl4-openssl-dev libexpat1-dev libffi-dev libgdbm-dev libicu-dev libmysqlclient-dev libncurses5-dev libpq-dev libre2-dev libreadline-dev libssl-dev libxml2-dev libxslt-dev libyaml-dev zlib1g-dev libmcrypt-dev libgmp-dev libfreetype6-dev libjpeg-dev libjpeg-turbo8-dev libpng-dev chrpath libxft-dev libfontconfig1-dev libkrb5-dev libxslt1-dev libldap2-dev libsasl2-dev libtool libvips libzmq3-dev locales-all locales libmagic1 xmlsec1 perl libimage-exiftool-perl python3-dev python3-pip python3-setuptools python3-venv ghostscript libgs-dev ffmpeg x264 x265 && rm -rf /var/cache/apt /var/lib/apt/lists # buildkit
ARG NODE_VERSION=24.19.0
RUN |1 NODE_VERSION=24.19.0 /bin/bash -c mkdir -p /usr/local/node-$NODE_VERSION && curl -L https://nodejs.org/dist/v$NODE_VERSION/node-v$NODE_VERSION-linux-x64.tar.gz | tar zxf - --strip-components 1 -C /usr/local/node-$NODE_VERSION # buildkit
RUN |1 NODE_VERSION=24.19.0 /bin/bash -c curl https://downloads.mongodb.com/compass/mongodb-mongosh_2.9.2_amd64.deb -o /tmp/mongosh.deb && dpkg -i /tmp/mongosh.deb && rm /tmp/mongosh.deb && curl https://fastdl.mongodb.org/tools/db/mongodb-database-tools-ubuntu2204-x86_64-100.11.0.deb -o /tmp/mongotools.deb && dpkg -i /tmp/mongotools.deb && rm /tmp/mongotools.deb # buildkit
RUN |1 NODE_VERSION=24.19.0 /bin/bash -c curl -L https://github.com/tianon/gosu/releases/download/1.19/gosu-amd64 -o /usr/local/bin/gosu && chmod +x /usr/local/bin/gosu # buildkit
ARG YQVERSION=4.53.3
RUN |2 NODE_VERSION=24.19.0 YQVERSION=4.53.3 /bin/bash -c curl -sL https://github.com/mikefarah/yq/releases/download/v${YQVERSION}/yq_linux_amd64 -o /usr/bin/yq && chmod +x /usr/bin/yq # buildkit
RUN |2 NODE_VERSION=24.19.0 YQVERSION=4.53.3 /bin/bash -c userdel --remove ubuntu && adduser --uid 1000 --disabled-login --gecos 'Cloudron' cloudron && passwd -d cloudron # buildkit
RUN |2 NODE_VERSION=24.19.0 YQVERSION=4.53.3 /bin/bash -c addgroup --gid 500 --system media && usermod -a -G media cloudron && usermod -a -G media www-data # buildkit
RUN |2 NODE_VERSION=24.19.0 YQVERSION=4.53.3 /bin/bash -c echo "set noswapfile" >> /root/.vimrc && gosu cloudron:cloudron bash -c 'echo "set noswapfile" >> /home/cloudron/.vimrc' && echo "unset historylog" >> /etc/nanorc # buildkit
RUN |2 NODE_VERSION=24.19.0 YQVERSION=4.53.3 /bin/bash -c update-locale LANG=en_US.UTF-8 LC_CTYPE=en_US.UTF-8 LC_ALL=en_US.UTF-8 # buildkit
RUN |2 NODE_VERSION=24.19.0 YQVERSION=4.53.3 /bin/bash -c for dir in .cache .config .node-gyp .npm .mongodb .ssh .yarn .local; do rm -rf /root/${dir} && ln -sf /run/root${dir} /root/${dir} && mkdir /run/root${dir}; rm -rf /home/cloudron/${dir} && ln -sf /run/cloudron${dir} /home/cloudron/${dir} && mkdir /run/cloudron${dir} && chown --no-dereference cloudron:cloudron /home/cloudron/${dir}; chown cloudron:cloudron /run/cloudron${dir}; done # buildkit
RUN |2 NODE_VERSION=24.19.0 YQVERSION=4.53.3 /bin/bash -c for file in .bash_history .dbshell .inputrc .irb_history .mongorc.js .mysql_history .psql_history .mongoshrc.js .yarnrc; do ln -sf /run/root${file} /root/${file}; ln -sf /run/cloudron${file} /home/cloudron/${file} && chown --no-dereference cloudron:cloudron /home/cloudron/${file}; done # buildkit
COPY cloudron_addons /usr/local/cloudron_addons # buildkit
RUN |2 NODE_VERSION=24.19.0 YQVERSION=4.53.3 /bin/bash -c echo -e "\nsource /usr/local/cloudron_addons\n\n[[ -f /app/data/.bashrc ]] && source /app/data/.bashrc\n" >> /root/.bashrc # buildkit
ENV PATH=/usr/local/node-24.19.0/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
ARG NETBIRD_SERVER_VERSION=0.78.1
ARG NGINX_VERSION=1.26.2
RUN |2 NETBIRD_SERVER_VERSION=0.78.1 NGINX_VERSION=1.26.2 /bin/bash -c apt-get update && apt-get install -y --no-install-recommends build-essential libpcre3-dev zlib1g-dev libssl-dev wget unzip git python3 python3-venv python3-pip && rm -rf /var/lib/apt/lists/* # buildkit
WORKDIR /tmp/nginx-build
RUN |2 NETBIRD_SERVER_VERSION=0.78.1 NGINX_VERSION=1.26.2 /bin/bash -c wget -q https://nginx.org/download/nginx-${NGINX_VERSION}.tar.gz && tar xzf nginx-${NGINX_VERSION}.tar.gz && cd nginx-${NGINX_VERSION} && ./configure --prefix=/app/code/nginx --sbin-path=/usr/local/sbin/nginx --conf-path=/app/data/nginx/nginx.conf --pid-path=/run/nginx.pid --lock-path=/run/nginx.lock --error-log-path=/app/data/logs/nginx-error.log --http-log-path=/app/data/logs/nginx-access.log --http-client-body-temp-path=/tmp/nginx_client_body --http-proxy-temp-path=/tmp/nginx_proxy --http-fastcgi-temp-path=/tmp/nginx_fastcgi --http-uwsgi-temp-path=/tmp/nginx_uwsgi --http-scgi-temp-path=/tmp/nginx_scgi --with-http_ssl_module --with-http_v2_module --with-http_stub_status_module --with-http_realip_module --with-http_gzip_static_module --with-stream --with-stream_ssl_module --with-pcre-jit --with-threads --with-file-aio && make -j$(nproc) && make install && rm -rf /tmp/nginx-build # buildkit
WORKDIR /tmp/dashboard-src
RUN |2 NETBIRD_SERVER_VERSION=0.78.1 NGINX_VERSION=1.26.2 /bin/bash -c git clone --depth 1 --branch v2.92.0 https://github.com/netbirdio/dashboard.git . && npm install --no-audit --no-fund --loglevel=error 2>&1 | tail -50 && npm run build 2>&1 | tail -80 # buildkit
RUN |2 NETBIRD_SERVER_VERSION=0.78.1 NGINX_VERSION=1.26.2 /bin/bash -c mkdir -p /app/code/dashboard && OUT_DIR="" && for d in dist build out; do if [ -d "$d" ]; then OUT_DIR="$d"; break; fi; done && if [ -z "$OUT_DIR" ]; then echo "Expected dist/ build/ or out/ output dir"; ls -la; exit 1; fi && echo "Using output dir: $OUT_DIR" && cp -r "$OUT_DIR/." /app/code/dashboard/ && rm -rf /tmp/dashboard-src # buildkit
RUN |2 NETBIRD_SERVER_VERSION=0.78.1 NGINX_VERSION=1.26.2 /bin/bash -c apt-get update && apt-get purge -y build-essential wget libpcre3-dev zlib1g-dev libssl-dev unzip git python3 python3-venv python3-pip || true && apt-get autoremove -y || true && apt-get install -y --no-install-recommends supervisor micro jq && apt-get clean && rm -rf /var/lib/apt/lists/* # buildkit
RUN |2 NETBIRD_SERVER_VERSION=0.78.1 NGINX_VERSION=1.26.2 /bin/bash -c mkdir -p /app/code /app/data /run && ln -sf /app/data/logs /app/code/logs # buildkit
WORKDIR /tmp/netbird
RUN |2 NETBIRD_SERVER_VERSION=0.78.1 NGINX_VERSION=1.26.2 /bin/bash -c curl -fsSL "https://github.com/netbirdio/netbird/releases/download/v${NETBIRD_SERVER_VERSION}/netbird_${NETBIRD_SERVER_VERSION}_linux_amd64.tar.gz" | tar xz && cp netbird /usr/local/bin/netbird && cp netbird-mgmt /usr/local/bin/netbird-mgmt 2>/dev/null || true && cp netbird-signal /usr/local/bin/netbird-signal 2>/dev/null || true && cp netbird-relay /usr/local/bin/netbird-relay 2>/dev/null || true && chmod +x /usr/local/bin/netbird* && rm -rf /tmp/netbird # buildkit
RUN |2 NETBIRD_SERVER_VERSION=0.78.1 NGINX_VERSION=1.26.2 /bin/bash -c if [ ! -f /app/code/dashboard/index.html ]; then echo "FATAL: dashboard build produced no index.html" && ls -la /app/code/dashboard; exit 1; fi # buildkit
RUN |2 NETBIRD_SERVER_VERSION=0.78.1 NGINX_VERSION=1.26.2 /bin/bash -c mkdir -p /app/code/defaults && cp -r /app/code/dashboard /app/code/defaults/dashboard 2>/dev/null || true # buildkit
RUN |2 NETBIRD_SERVER_VERSION=0.78.1 NGINX_VERSION=1.26.2 /bin/bash -c mkdir -p /app/data/config /app/data/state /app/data/idp /app/data/logs /app/data/nginx /app/data/dashboard /app/data/dashboard/config /run/app && chown -R cloudron:cloudron /app/data /run/app # buildkit
COPY supervisord.conf /app/code/supervisord.conf # buildkit
COPY start.sh /app/code/start.sh # buildkit
COPY nginx.conf.template /app/code/nginx.conf.template # buildkit
COPY config.yaml.template /app/code/config.yaml.template # buildkit
COPY dashboard.env.template /app/code/dashboard.env.template # buildkit
RUN |2 NETBIRD_SERVER_VERSION=0.78.1 NGINX_VERSION=1.26.2 /bin/bash -c chmod +x /app/code/start.sh && chown -R cloudron:cloudron /app/code # buildkit
WORKDIR /app/code
EXPOSE [8080/tcp]
EXPOSE [3479/udp]
CMD ["/app/code/start.sh"]

Labels

Key Value
org.opencontainers.image.version 24.04
Details
Container
2026-09-11 15:14:02 +00:00
1
OCI / Docker
linux/amd64
1.5 GiB
Versions (94) View all
0.0.96 2026-09-12
0.0.95 2026-09-12
0.0.94 2026-09-12
0.0.93 2026-09-12
0.0.92 2026-09-11