34 lines
755 B
Docker
34 lines
755 B
Docker
# Example Dockerfile for arm64
|
|
# 1. ARGs vor FROM deklarieren (für das Basis-Image)
|
|
ARG BASE_IMAGE=alpine:latest
|
|
|
|
FROM ${BASE_IMAGE}
|
|
|
|
# 2. ARGs nach FROM erneut deklarieren (für die Verwendung im Build)
|
|
ARG MAINTAINER
|
|
ARG TZ
|
|
ARG APP_NAME
|
|
ARG APP_USER
|
|
|
|
# Metadaten setzen
|
|
LABEL maintainer="${MAINTAINER}"
|
|
LABEL org.opencontainers.image.title="${APP_NAME}"
|
|
|
|
# Umgebungsvariablen im Container setzen
|
|
ENV TZ=${TZ}
|
|
ENV USER=${APP_USER}
|
|
|
|
# Basis-System Update (Beispiel für Alpine)
|
|
RUN apk add --no-cache tzdata ca-certificates
|
|
|
|
# Verzeichnisse aus dem Template vorbereiten
|
|
WORKDIR /app
|
|
COPY ./config /app/config
|
|
COPY ./data /app/data
|
|
|
|
# Beispiel: User anlegen
|
|
RUN adduser -D ${APP_USER} && chown -R ${APP_USER}:${APP_USER} /app
|
|
|
|
USER ${APP_USER}
|
|
|
|
CMD ["sh"] |