Refactor Dockerfile for multi-stage builds

Refactor Dockerfile to use multi-stage builds for better organization and efficiency.
This commit is contained in:
Alexandre
2026-02-09 09:18:12 +01:00
committed by GitHub
parent 19f3d58733
commit 41614677ad

View File

@@ -22,9 +22,14 @@ ARG DASHBOARD_VERSION=2.31.0
#################
ARG BUILD_FROM
FROM ${BUILD_FROM}
FROM ${BUILD_FROM} as base
ENV BASHIO_VERSION=0.14.3
FROM netbirdio/management:${NETBIRD_VERSION} AS netbird-management
FROM netbirdio/signal:${NETBIRD_VERSION} AS netbird-signal
FROM netbirdio/relay:${NETBIRD_VERSION} AS netbird-relay
FROM netbirdio/dashboard:${DASHBOARD_VERSION} AS netbird-dashboard
##################
# 3 Modify Image #
##################
@@ -70,10 +75,7 @@ RUN chmod 744 /ha_autoapps.sh && /ha_autoapps.sh "$PACKAGES" && rm /ha_autoapps.
# 5 Copy NetBird components #
#############################
FROM netbirdio/management:${NETBIRD_VERSION} AS netbird-management
FROM netbirdio/signal:${NETBIRD_VERSION} AS netbird-signal
FROM netbirdio/relay:${NETBIRD_VERSION} AS netbird-relay
FROM netbirdio/dashboard:${DASHBOARD_VERSION} AS netbird-dashboard
FROM base
COPY --from=netbird-management /go/bin/netbird-mgmt /usr/local/bin/netbird-mgmt
COPY --from=netbird-signal /go/bin/netbird-signal /usr/local/bin/netbird-signal