🗃️ Committing everything that changed 🗃️
All checks were successful
release-tag / release-image (push) Successful in 7m40s

Dockerfile
.env.scripts
This commit is contained in:
casjay 2025-02-04 21:31:15 -05:00
parent 7f15e3c12e
commit f748db577b
Signed by untrusted user who does not match committer: jason
GPG Key ID: 1AB309F42A764145
2 changed files with 229 additions and 92 deletions

60
.env.scripts Normal file
View File

@ -0,0 +1,60 @@
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
##@Version : 202502042129-git
# @@Author : CasjaysDev
# @@Contact : CasjaysDev <docker-admin@casjaysdev.pro>
# @@License : MIT
# @@Copyright : Copyright 2025 CasjaysDev
# @@Created : Tue Feb 4 09:29:42 PM EST 2025
# @@File : .env.scripts
# @@Description : Variables for gen-dockerfile and buildx scripts
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
# entrypoint Settings
DOCKER_ENTYPOINT_PORTS_WEB="${DOCKER_ENTYPOINT_PORTS_WEB}"
DOCKER_ENTYPOINT_PORTS_SRV="${DOCKER_ENTYPOINT_PORTS_SRV}"
DOCKER_ENTYPOINT_HEALTH_APPS="$DOCKER_ENTYPOINT_HEALTH_APPS"
DOCKER_ENTYPOINT_HEALTH_ENDPOINTS="$DOCKER_ENTYPOINT_HEALTH_ENDPOINTS"
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
# Dockerfile info
ENV_DOCKERFILE="Dockerfile"
ENV_IMAGE_NAME="ifconfig"
ENV_USE_TEMPLATE="alpine"
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
# Maintainer info
ENV_ORG_NAME="casjaysdevdocker"
ENV_VENDOR="CasjaysDev"
ENV_AUTHOR="CasjaysDev"
ENV_MAINTAINER="CasjaysDev <docker-admin@casjaysdev.pro>"
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
# REPO info
ENV_GIT_REPO_URL="https://github.com/casjaysdevdocker/ifconfig"
ENV_REGISTRY_URL="https://hub.docker.com/r/casjaysdevdocker/ifconfig"
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
# Push image info
ENV_IMAGE_PUSH="casjaysdevdocker/ifconfig"
ENV_IMAGE_TAG="latest"
ENV_ADD_TAGS=""
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
ENV_ADD_IMAGE_PUSH=""
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
# Pull image info
ENV_PULL_URL="casjaysdev/alpine"
ENV_DISTRO_TAG="${IMAGE_VERSION}"
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
# Env
SERVICE_PORT="80"
EXPOSE_PORTS=""
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
# Versions
PHP_VERSION="system"
NODE_VERSION="system"
NODE_MANAGER="system"
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
# Default directories
WWW_ROOT_DIR="/usr/local/share/httpd/default"
DEFAULT_FILE_DIR="/usr/local/share/template-files"
DEFAULT_DATA_DIR="/usr/local/share/template-files/data"
DEFAULT_CONF_DIR="/usr/local/share/template-files/config"
DEFAULT_TEMPLATE_DIR="/usr/local/share/template-files/defaults"
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
ENV_PACKAGES=""
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

View File

@ -1,182 +1,259 @@
# syntax=docker/dockerfile:1
# Docker image for ifconfig using the alpine template # Docker image for ifconfig using the alpine template
ARG LICENSE="MIT"
ARG IMAGE_NAME="ifconfig" ARG IMAGE_NAME="ifconfig"
ARG PHP_SERVER="ifconfig" ARG PHP_SERVER="ifconfig"
ARG BUILD_DATE="Sun Jul 2 04:21:03 PM EDT 2023" ARG BUILD_DATE="202502042129"
ARG LANGUAGE="en_US.UTF-8" ARG LANGUAGE="en_US.UTF-8"
ARG TIMEZONE="America/New_York" ARG TIMEZONE="America/New_York"
ARG WWW_ROOT_DIR="/data/htdocs" ARG WWW_ROOT_DIR="/usr/local/share/httpd/default"
ARG DEFAULT_FILE_DIR="/usr/local/share/template-files" ARG DEFAULT_FILE_DIR="/usr/local/share/template-files"
ARG DEFAULT_DATA_DIR="/usr/local/share/template-files/data" ARG DEFAULT_DATA_DIR="/usr/local/share/template-files/data"
ARG DEFAULT_CONF_DIR="/usr/local/share/template-files/config" ARG DEFAULT_CONF_DIR="/usr/local/share/template-files/config"
ARG DEFAULT_TEMPLATE_DIR="/usr/local/share/template-files/defaults" ARG DEFAULT_TEMPLATE_DIR="/usr/local/share/template-files/defaults"
ARG PATH="/usr/local/etc/docker/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"
ARG IMAGE_REPO="casjaysdev/alpine"
ARG IMAGE_VERSION="latest"
ARG CONTAINER_VERSION="${IMAGE_VERSION}"
ARG SERVICE_PORT="80"
ARG EXPOSE_PORTS="80"
ARG PHP_VERSION="php81"
ARG USER="root" ARG USER="root"
ARG DISTRO_VERSION="${IMAGE_VERSION}" ARG SHELL_OPTS="set -e -o pipefail"
ARG BUILD_VERSION="${DISTRO_VERSION}"
ARG SERVICE_PORT="80"
ARG EXPOSE_PORTS=""
ARG PHP_VERSION="system"
ARG NODE_VERSION="system"
ARG NODE_MANAGER="system"
ARG IMAGE_REPO="casjaysdevdocker/ifconfig"
ARG IMAGE_VERSION="latest"
ARG CONTAINER_VERSION=""
ARG PULL_URL="casjaysdev/alpine"
ARG DISTRO_VERSION="${IMAGE_VERSION}"
ARG BUILD_VERSION="${BUILD_DATE}"
FROM mpolden/echoip:latest AS src
FROM tianon/gosu:latest AS gosu FROM tianon/gosu:latest AS gosu
FROM ${IMAGE_REPO}:${DISTRO_VERSION} AS build FROM mpolden/echoip:latest AS src
FROM ${PULL_URL}:${DISTRO_VERSION} AS build
ARG TZ
ARG USER ARG USER
ARG LICENSE ARG LICENSE
ARG TIMEZONE ARG TIMEZONE
ARG LANGUAGE ARG LANGUAGE
ARG IMAGE_NAME ARG IMAGE_NAME
ARG PHP_SERVER
ARG BUILD_DATE ARG BUILD_DATE
ARG SERVICE_PORT ARG SERVICE_PORT
ARG EXPOSE_PORTS ARG EXPOSE_PORTS
ARG BUILD_VERSION ARG BUILD_VERSION
ARG IMAGE_VERSION
ARG WWW_ROOT_DIR ARG WWW_ROOT_DIR
ARG DEFAULT_FILE_DIR ARG DEFAULT_FILE_DIR
ARG DEFAULT_DATA_DIR ARG DEFAULT_DATA_DIR
ARG DEFAULT_CONF_DIR ARG DEFAULT_CONF_DIR
ARG DEFAULT_TEMPLATE_DIR ARG DEFAULT_TEMPLATE_DIR
ARG DISTRO_VERSION ARG DISTRO_VERSION
ARG NODE_VERSION
ARG NODE_MANAGER
ARG PHP_VERSION ARG PHP_VERSION
ARG PHP_SERVER
ARG SHELL_OPTS
ARG PATH
ARG PACK_LIST="bash bash-completion git curl wget sudo unzip iproute2 ssmtp openssl jq ca-certificates tzdata mailcap ncurses util-linux pciutils usbutils coreutils binutils findutils grep rsync zip certbot tini certbot py3-pip procps net-tools coreutils sed gawk grep attr findutils readline lsof less curl shadow" ARG PACK_LIST=" "
ENV ENV=~/.bashrc ENV ENV=~/.profile
ENV SHELL="/bin/sh" ENV SHELL="/bin/sh"
ENV PATH="${PATH}"
ENV TZ="${TIMEZONE}" ENV TZ="${TIMEZONE}"
ENV TIMEZONE="${TZ}" ENV TIMEZONE="${TZ}"
ENV LANG="${LANGUAGE}" ENV LANG="${LANGUAGE}"
ENV TERM="xterm-256color" ENV TERM="xterm-256color"
ENV HOSTNAME="casjaysdev-ifconfig" ENV HOSTNAME="casjaysdevdocker-ifconfig"
USER ${USER} USER ${USER}
WORKDIR /root WORKDIR /root
RUN set -ex ; \ COPY ./rootfs/usr/local/bin/. /usr/local/bin/
mkdir -p "/opt/echoip"
RUN echo "Updating the system and ensuring bash is installed"; \
pkmgr update;pkmgr install bash
RUN set -e; \
echo "Setting up prerequisites"; \
true
ENV SHELL="/bin/bash"
SHELL [ "/bin/bash", "-c" ]
COPY --from=gosu /usr/local/bin/gosu /usr/local/bin/gosu COPY --from=gosu /usr/local/bin/gosu /usr/local/bin/gosu
COPY --from=src /opt/echoip/. /opt/echoip/ COPY --from=src /opt/echoip/. /opt/echoip/
COPY ./Dockerfile /root/Dockerfile
RUN echo "Initializing the system"; \
$SHELL_OPTS; \
mkdir -p "${DEFAULT_DATA_DIR}" "${DEFAULT_CONF_DIR}" "${DEFAULT_TEMPLATE_DIR}" "/root/docker/setup" "/etc/profile.d"; \
if [ -f "/root/docker/setup/00-init.sh" ];then echo "Running the init script";/root/docker/setup/00-init.sh||{ echo "Failed to execute /root/docker/setup/00-init.sh" >&2 && exit 10; };echo "Done running the init script";fi; \
echo ""
RUN echo "Creating and editing system files "; \
$SHELL_OPTS; \
[ -f "/root/.profile" ] || touch "/root/.profile"; \
if [ -f "/root/docker/setup/01-system.sh" ];then echo "Running the system script";/root/docker/setup/01-system.sh||{ echo "Failed to execute /root/docker/setup/01-system.sh" >&2 && exit 10; };echo "Done running the system script";fi; \
echo ""
RUN echo "Running pre-package commands"; \
$SHELL_OPTS; \
echo ""
RUN echo "Setting up and installing packages"; \
$SHELL_OPTS; \
if [ -n "${PACK_LIST}" ];then echo "Installing packages: $PACK_LIST";echo "${PACK_LIST}" >/root/docker/setup/packages.txt;pkmgr install ${PACK_LIST};fi; \
echo ""
RUN echo "Initializing packages before copying files to image"; \
$SHELL_OPTS; \
if [ -f "/root/docker/setup/02-packages.sh" ];then echo "Running the packages script";/root/docker/setup/02-packages.sh||{ echo "Failed to execute /root/docker/setup/02-packages.sh" >&2 && exit 10; };echo "Done running the packages script";fi; \
echo ""
COPY ./rootfs/. / COPY ./rootfs/. /
COPY ./Dockerfile /root/docker/Dockerfile
RUN set -ex ; \ RUN echo "Updating system files "; \
$SHELL_OPTS; \
echo "$TIMEZONE" >"/etc/timezone"; \
touch "/etc/profile" "/root/.profile"; \
echo 'hosts: files dns' >"/etc/nsswitch.conf"; \
[ "$PHP_VERSION" = "system" ] && PHP_VERSION="php" || true; \
PHP_BIN="$(command -v ${PHP_VERSION} 2>/dev/null || true)"; \
PHP_FPM="$(ls /usr/*bin/php*fpm* 2>/dev/null || true)"; \
pip_bin="$(command -v python3 2>/dev/null || command -v python2 2>/dev/null || command -v python 2>/dev/null || true)"; \
py_version="$(command $pip_bin --version | sed 's|[pP]ython ||g' | awk -F '.' '{print $1$2}' | grep '[0-9]' || true)"; \
[ "$py_version" -gt "310" ] && pip_opts="--break-system-packages " || pip_opts=""; \
[ -f "/usr/share/zoneinfo/${TZ}" ] && ln -sf "/usr/share/zoneinfo/${TZ}" "/etc/localtime" || true; \
[ -n "$PHP_BIN" ] && [ -z "$(command -v php 2>/dev/null)" ] && ln -sf "$PHP_BIN" "/usr/bin/php" 2>/dev/null || true; \
[ -n "$PHP_FPM" ] && [ -z "$(command -v php-fpm 2>/dev/null)" ] && ln -sf "$PHP_FPM" "/usr/bin/php-fpm" 2>/dev/null || true; \
if [ -f "/etc/profile.d/color_prompt.sh.disabled" ]; then mv -f "/etc/profile.d/color_prompt.sh.disabled" "/etc/profile.d/color_prompt.sh";fi ; \
{ [ -f "/etc/bash/bashrc" ] && cp -Rf "/etc/bash/bashrc" "/root/.bashrc"; } || { [ -f "/etc/bashrc" ] && cp -Rf "/etc/bashrc" "/root/.bashrc"; } || { [ -f "/etc/bash.bashrc" ] && cp -Rf "/etc/bash.bashrc" "/root/.bashrc"; } || true; \
if [ -z "$(command -v "apt-get" 2>/dev/null)" ];then grep -sh -q 'alias quit' "/root/.bashrc" || printf '# Profile\n\n%s\n%s\n%s\n' '. /etc/profile' '. /root/.profile' "alias quit='exit 0 2>/dev/null'" >>"/root/.bashrc"; fi; \
if [ "$PHP_VERSION" != "system" ] && [ -e "/etc/php" ] && [ -d "/etc/${PHP_VERSION}" ];then rm -Rf "/etc/php";fi; \
if [ "$PHP_VERSION" != "system" ] && [ -n "${PHP_VERSION}" ] && [ -d "/etc/${PHP_VERSION}" ];then ln -sf "/etc/${PHP_VERSION}" "/etc/php";fi; \
if [ -f "/root/docker/setup/03-files.sh" ];then echo "Running the files script";/root/docker/setup/03-files.sh||{ echo "Failed to execute /root/docker/setup/03-files.sh" >&2 && exit 10; };echo "Done running the files script";fi; \
echo "" echo ""
RUN set -ex ; \ RUN echo "Custom Settings"; \
rm -Rf "/etc/apk/repositories"; \ $SHELL_OPTS; \
[ "$DISTRO_VERSION" = "latest" ] && DISTRO_VERSION="edge"; \
[ "$DISTRO_VERSION" = "edge" ] || DISTRO_VERSION="v${DISTRO_VERSION}" ; \
mkdir -p "${DEFAULT_DATA_DIR}" "${DEFAULT_CONF_DIR}" "${DEFAULT_TEMPLATE_DIR}"; \
echo "http://dl-cdn.alpinelinux.org/alpine/${DISTRO_VERSION}/main" >>"/etc/apk/repositories"; \
echo "http://dl-cdn.alpinelinux.org/alpine/${DISTRO_VERSION}/community" >>"/etc/apk/repositories"; \
if [ "${DISTRO_VERSION}" = "edge" ]; then echo "http://dl-cdn.alpinelinux.org/alpine/${DISTRO_VERSION}/testing" >>"/etc/apk/repositories" ; fi ; \
apk -U upgrade --no-cache && apk add --no-cache ${PACK_LIST}
RUN set -ex ; \
echo "$TIMEZONE" >"/etc/timezone" ; \
echo 'hosts: files dns' >"/etc/nsswitch.conf" ; \
[ -f "/usr/share/zoneinfo/${TZ}" ] && ln -sf "/usr/share/zoneinfo/${TZ}" "/etc/localtime" ; \
PHP_FPM="$(ls /usr/*bin/php*fpm* 2>/dev/null || echo '')" ; \
[ -n "$PHP_FPM" ] && [ -z "$(type -P php-fpm)" ] && ln -sf "$PHP_FPM" "/usr/bin/php-fpm" || true ; \
if [ -f "/etc/profile.d/color_prompt.sh.disabled" ]; then mv -f "/etc/profile.d/color_prompt.sh.disabled" "/etc/profile.d/color_prompt.sh"; fi
RUN set -ex ; \
touch "/etc/profile" "/root/.profile" ; \
{ [ -f "/etc/bash/bashrc" ] && cp -Rf "/etc/bash/bashrc" "/root/.bashrc" ; } || { [ -f "/etc/bashrc" ] && cp -Rf "/etc/bashrc" "/root/.bashrc" ; } || { [ -f "/etc/bash.bashrc" ] && cp -Rf "/etc/bash.bashrc" "/root/.bashrc" ; }; \
sed -i 's|root:x:.*|root:x:0:0:root:/root:/bin/bash|g' "/etc/passwd" ; \
grep -s -q 'alias quit' "/root/.bashrc" || printf '# Profile\n\n%s\n%s\n%s\n' '. /etc/profile' '. /root/.profile' "alias quit='exit 0 2>/dev/null'" >>"/root/.bashrc" ; \
[ -f "/usr/local/etc/docker/env/default.sample" ] && [ -d "/etc/profile.d" ] && \
cp -Rf "/usr/local/etc/docker/env/default.sample" "/etc/profile.d/container.env.sh" && chmod 755 "/etc/profile.d/container.env.sh" ; \
BASH_CMD="$(type -P bash)" ; [ -f "$BASH_CMD" ] && rm -rf "/bin/sh" && ln -sf "$BASH_CMD" "/bin/sh"
RUN set -ex ; \
ln -sf /opt/echoip/echoip /opt/echoip/ifconfig ; \
sed -i "s|REPLACE_MODIFIED|$(date +'%Y-%m-%d at %H:%M')|g" /opt/echoip/html/index.html; \
bash -c "/tmp/update-geoip-db.sh"
RUN set -ex ; \
echo 'Running cleanup' ; \
echo "" echo ""
RUN set -ex ; \ RUN echo "Setting up users and scripts "; \
rm -Rf "/config" "/data" ; \ $SHELL_OPTS; \
rm -rf /etc/systemd/system/*.wants/* ; \ if [ -f "/root/docker/setup/04-users.sh" ];then echo "Running the users script";/root/docker/setup/04-users.sh||{ echo "Failed to execute /root/docker/setup/04-users.sh" >&2 && exit 10; };echo "Done running the users script";fi; \
rm -rf /lib/systemd/system/systemd-update-utmp* ; \ echo ""
rm -rf /lib/systemd/system/anaconda.target.wants/*; \
rm -rf /lib/systemd/system/local-fs.target.wants/* ; \ RUN echo "Running the user init commands"; \
rm -rf /lib/systemd/system/multi-user.target.wants/* ; \ $SHELL_OPTS; \
rm -rf /lib/systemd/system/sockets.target.wants/*udev* ; \ echo ""
rm -rf /lib/systemd/system/sockets.target.wants/*initctl* ; \
rm -Rf /usr/share/doc/* /usr/share/info/* /tmp/* /var/tmp/* /var/cache/*/* ; \ RUN echo "Setting OS Settings "; \
if [ -d "/lib/systemd/system/sysinit.target.wants" ]; then cd "/lib/systemd/system/sysinit.target.wants" && rm -f $(ls | grep -v systemd-tmpfiles-setup) ; fi $SHELL_OPTS; \
echo ""
RUN echo "Custom Applications"; \
$SHELL_OPTS; \
echo ""
RUN echo "Running custom commands"; \
if [ -f "/root/docker/setup/05-custom.sh" ];then echo "Running the custom script";/root/docker/setup/05-custom.sh||{ echo "Failed to execute /root/docker/setup/05-custom.sh" && exit 10; };echo "Done running the custom script";fi; \
echo ""
RUN echo "Running final commands before cleanup"; \
$SHELL_OPTS; \
if [ -f "/root/docker/setup/06-post.sh" ];then echo "Running the post script";/root/docker/setup/06-post.sh||{ echo "Failed to execute /root/docker/setup/06-post.sh" >&2 && exit 10; };echo "Done running the post script";fi; \
echo ""
RUN echo "Deleting unneeded files"; \
$SHELL_OPTS; \
pkmgr clean; \
rm -Rf "/config" "/data" || true; \
rm -rf /etc/systemd/system/*.wants/* || true; \
rm -rf /lib/systemd/system/systemd-update-utmp* || true; \
rm -rf /lib/systemd/system/anaconda.target.wants/* || true; \
rm -rf /lib/systemd/system/local-fs.target.wants/* || true; \
rm -rf /lib/systemd/system/multi-user.target.wants/* || true; \
rm -rf /lib/systemd/system/sockets.target.wants/*udev* || true; \
rm -rf /lib/systemd/system/sockets.target.wants/*initctl* || true; \
rm -Rf /usr/share/doc/* /var/tmp/* /var/cache/*/* /root/.cache/* /usr/share/info/* /tmp/* || true; \
if [ -d "/lib/systemd/system/sysinit.target.wants" ];then cd "/lib/systemd/system/sysinit.target.wants" && rm -f $(ls | grep -v systemd-tmpfiles-setup);fi; \
if [ -f "/root/docker/setup/07-cleanup.sh" ];then echo "Running the cleanup script";/root/docker/setup/07-cleanup.sh||{ echo "Failed to execute /root/docker/setup/07-cleanup.sh" >&2 && exit 10; };echo "Done running the cleanup script";fi; \
echo ""
RUN echo "Init done" RUN echo "Init done"
FROM scratch FROM scratch
ARG TZ
ARG PATH
ARG USER ARG USER
ARG LICENSE
ARG LANGUAGE
ARG TIMEZONE ARG TIMEZONE
ARG LANGUAGE
ARG IMAGE_NAME ARG IMAGE_NAME
ARG PHP_SERVER
ARG BUILD_DATE ARG BUILD_DATE
ARG SERVICE_PORT ARG SERVICE_PORT
ARG EXPOSE_PORTS ARG EXPOSE_PORTS
ARG BUILD_VERSION ARG BUILD_VERSION
ARG IMAGE_VERSION
ARG WWW_ROOT_DIR
ARG DEFAULT_FILE_DIR
ARG DEFAULT_DATA_DIR ARG DEFAULT_DATA_DIR
ARG DEFAULT_CONF_DIR ARG DEFAULT_CONF_DIR
ARG DEFAULT_TEMPLATE_DIR ARG DEFAULT_TEMPLATE_DIR
ARG DISTRO_VERSION ARG DISTRO_VERSION
ARG NODE_VERSION
ARG NODE_MANAGER
ARG PHP_VERSION ARG PHP_VERSION
ARG PHP_SERVER
ARG LICENSE="WTFPL"
ARG ENV_PORTS="${EXPOSE_PORTS}"
USER ${USER} USER ${USER}
WORKDIR /opt/echoip WORKDIR /root
LABEL maintainer="CasjaysDev <docker-admin@casjaysdev.pro>" LABEL maintainer="CasjaysDev <docker-admin@casjaysdev.pro>"
LABEL org.opencontainers.image.vendor="CasjaysDev" LABEL org.opencontainers.image.vendor="CasjaysDev"
LABEL org.opencontainers.image.authors="CasjaysDev" LABEL org.opencontainers.image.authors="CasjaysDev"
LABEL org.opencontainers.image.vcs-type="Git" LABEL org.opencontainers.image.description="Containerized version of ${IMAGE_NAME}"
LABEL org.opencontainers.image.name="${IMAGE_NAME}" LABEL org.opencontainers.image.title="${IMAGE_NAME}"
LABEL org.opencontainers.image.base.name="${IMAGE_NAME}" LABEL org.opencontainers.image.base.name="${IMAGE_NAME}"
LABEL org.opencontainers.image.license="${LICENSE}" LABEL org.opencontainers.image.authors="${LICENSE}"
LABEL org.opencontainers.image.vcs-ref="${BUILD_VERSION}" LABEL org.opencontainers.image.created="${BUILD_DATE}"
LABEL org.opencontainers.image.build-date="${BUILD_DATE}"
LABEL org.opencontainers.image.version="${BUILD_VERSION}" LABEL org.opencontainers.image.version="${BUILD_VERSION}"
LABEL org.opencontainers.image.schema-version="${BUILD_VERSION}" LABEL org.opencontainers.image.schema-version="${BUILD_VERSION}"
LABEL org.opencontainers.image.url="https://hub.docker.com/r/casjaysdevdocker/${IMAGE_NAME}" LABEL org.opencontainers.image.url="https://hub.docker.com/r/casjaysdevdocker/ifconfig"
LABEL org.opencontainers.image.vcs-url="https://github.com/casjaysdevdocker/${IMAGE_NAME}" LABEL org.opencontainers.image.source="https://hub.docker.com/r/casjaysdevdocker/ifconfig"
LABEL org.opencontainers.image.url.source="https://github.com/casjaysdevdocker/${IMAGE_NAME}" LABEL org.opencontainers.image.vcs-type="Git"
LABEL org.opencontainers.image.documentation="https://hub.docker.com/r/casjaysdevdocker/${IMAGE_NAME}" LABEL org.opencontainers.image.revision="${BUILD_VERSION}"
LABEL org.opencontainers.image.description="Containerized version of ${IMAGE_NAME}" LABEL org.opencontainers.image.source="https://github.com/casjaysdevdocker/ifconfig"
LABEL org.opencontainers.image.documentation="https://github.com/casjaysdevdocker/ifconfig"
LABEL com.github.containers.toolbox="false" LABEL com.github.containers.toolbox="false"
ENV ENV=~/.bashrc ENV ENV=~/.bashrc
ENV SHELL="/bin/bash" ENV USER="${USER}"
ENV PATH="${PATH}"
ENV TZ="${TIMEZONE}" ENV TZ="${TIMEZONE}"
ENV SHELL="/bin/bash"
ENV TIMEZONE="${TZ}" ENV TIMEZONE="${TZ}"
ENV LANG="${LANGUAGE}" ENV LANG="${LANGUAGE}"
ENV TERM="xterm-256color" ENV TERM="xterm-256color"
ENV PORT="${SERVICE_PORT}" ENV PORT="${SERVICE_PORT}"
ENV ENV_PORTS="${EXPOSE_PORTS}" ENV ENV_PORTS="${ENV_PORTS}"
ENV PHP_SERVER="${PHP_SERVER}"
ENV PHP_VERSION="${PHP_VERSION}"
ENV CONTAINER_NAME="${IMAGE_NAME}" ENV CONTAINER_NAME="${IMAGE_NAME}"
ENV HOSTNAME="casjaysdev-${IMAGE_NAME}" ENV HOSTNAME="casjaysdev-${IMAGE_NAME}"
ENV USER="${USER}" ENV PHP_SERVER="${PHP_SERVER}"
ENV PATH="/opt/echoip:$PATH" ENV NODE_VERSION="${NODE_VERSION}"
ENV NODE_MANAGER="${NODE_MANAGER}"
ENV PHP_VERSION="${PHP_VERSION}"
ENV DISTRO_VERSION="${IMAGE_VERSION}"
ENV WWW_ROOT_DIR="${WWW_ROOT_DIR}"
COPY --from=build /. / COPY --from=build /. /
VOLUME [ "/config","/data" ] VOLUME [ "/config","/data" ]
EXPOSE ${ENV_PORTS} EXPOSE ${SERVICE_PORT} ${ENV_PORTS}
CMD [ "start", "all" ] CMD [ "tail", "-f", "/dev/null" ]
ENTRYPOINT [ "tini", "--", "/usr/local/bin/entrypoint.sh" ] ENTRYPOINT [ "tini","--","/usr/local/bin/entrypoint.sh" ]
HEALTHCHECK --start-period=10m --interval=5m --timeout=15s CMD [ "/usr/local/bin/entrypoint.sh", "healthcheck" ] HEALTHCHECK --start-period=10m --interval=5m --timeout=15s CMD [ "/usr/local/bin/entrypoint.sh", "healthcheck" ]