...🗃️ Add Node 24 variant; switch base from casjaysdev/debian to debian:...

- Add Dockerfile.24 and matching .env.scripts.24.
- Refresh per-version env scripts: .env.scripts.18, .env.scripts.20,
.env.scripts.22, .env.scripts.23.
- Update primary Dockerfile and Dockerfile.{18,20,22,23}: switch base
image PULL_URL from casjaysdev/debian to debian (DISTRO_VERSION
bookworm) and add MONGODB_VERSION=7.0 build arg.
- Add init.d entries: rootfs/usr/local/etc/docker/init.d/{mongodb,
nodejs}.
- Refresh
rootfs/usr/local/share/template-files/config/env/examples/mongodb.sh.

Dockerfile
Dockerfile.18
Dockerfile.20
Dockerfile.22
Dockerfile.23
Dockerfile.24
.env.scripts
.env.scripts.18
.env.scripts.20
.env.scripts.22
.env.scripts.23
.env.scripts.24
rootfs/usr/local/etc/docker/init.d/
rootfs/usr/local/share/template-files/config/env/examples/mongodb.sh
This commit is contained in:
2026-04-26 00:53:05 -04:00
parent fa84909484
commit d7175f4972
15 changed files with 969 additions and 23 deletions
+4 -3
View File
@@ -37,8 +37,8 @@ ENV_ADD_TAGS=""
ENV_ADD_IMAGE_PUSH="" ENV_ADD_IMAGE_PUSH=""
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - # - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
# Pull image info # Pull image info
ENV_PULL_URL="casjaysdev/debian" ENV_PULL_URL="debian"
ENV_DISTRO_TAG="${IMAGE_VERSION}" ENV_DISTRO_TAG="bookworm"
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - # - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
# Env # Env
SERVICE_PORT="" SERVICE_PORT=""
@@ -48,6 +48,7 @@ EXPOSE_PORTS="1-65535"
PHP_VERSION="php81" PHP_VERSION="php81"
NODE_VERSION="system" NODE_VERSION="system"
NODE_MANAGER="system" NODE_MANAGER="system"
MONGODB_VERSION="7.0"
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - # - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
# Default directories # Default directories
WWW_ROOT_DIR="/usr/local/share/httpd/default" WWW_ROOT_DIR="/usr/local/share/httpd/default"
@@ -56,5 +57,5 @@ DEFAULT_DATA_DIR="/usr/local/share/template-files/data"
DEFAULT_CONF_DIR="/usr/local/share/template-files/config" DEFAULT_CONF_DIR="/usr/local/share/template-files/config"
DEFAULT_TEMPLATE_DIR="/usr/local/share/template-files/defaults" DEFAULT_TEMPLATE_DIR="/usr/local/share/template-files/defaults"
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - # - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
ENV_PACKAGES="" ENV_PACKAGES="gnupg curl ca-certificates apt-transport-https"
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - # - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
+61
View File
@@ -0,0 +1,61 @@
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
##@Version : 202511291011-git
# @@Author : CasjaysDev
# @@Contact : CasjaysDev <docker-admin@casjaysdev.pro>
# @@License : MIT
# @@Copyright : Copyright 2025 CasjaysDev
# @@Created : Tue Nov 29 10:11:00 AM EDT 2025
# @@File : .env.scripts.18
# @@Description : Variables for Node.js 18 build
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
# 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.18"
ENV_IMAGE_NAME="nodejs"
ENV_USE_TEMPLATE="debian"
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
# 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/nodejs"
ENV_REGISTRY_URL="docker.io"
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
# Push image info
ENV_IMAGE_PUSH="casjaysdevdocker/nodejs"
ENV_IMAGE_TAG="18"
ENV_ADD_TAGS=""
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
ENV_ADD_IMAGE_PUSH=""
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
# Pull image info
ENV_PULL_URL="debian"
ENV_DISTRO_TAG="latest"
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
# Env
SERVICE_PORT="80"
EXPOSE_PORTS=""
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
# Versions
PHP_VERSION="system"
NODE_VERSION="18"
NODE_MANAGER="system"
MONGODB_VERSION="7.0"
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
# 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="gnupg curl ca-certificates apt-transport-https"
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
+61
View File
@@ -0,0 +1,61 @@
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
##@Version : 202511291011-git
# @@Author : CasjaysDev
# @@Contact : CasjaysDev <docker-admin@casjaysdev.pro>
# @@License : MIT
# @@Copyright : Copyright 2025 CasjaysDev
# @@Created : Tue Nov 29 10:11:00 AM EDT 2025
# @@File : .env.scripts.20
# @@Description : Variables for Node.js 20 build
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
# 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.20"
ENV_IMAGE_NAME="nodejs"
ENV_USE_TEMPLATE="debian"
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
# 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/nodejs"
ENV_REGISTRY_URL="docker.io"
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
# Push image info
ENV_IMAGE_PUSH="casjaysdevdocker/nodejs"
ENV_IMAGE_TAG="20"
ENV_ADD_TAGS=""
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
ENV_ADD_IMAGE_PUSH=""
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
# Pull image info
ENV_PULL_URL="debian"
ENV_DISTRO_TAG="latest"
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
# Env
SERVICE_PORT="80"
EXPOSE_PORTS=""
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
# Versions
PHP_VERSION="system"
NODE_VERSION="20"
NODE_MANAGER="system"
MONGODB_VERSION="7.0"
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
# 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="gnupg curl ca-certificates apt-transport-https"
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
+61
View File
@@ -0,0 +1,61 @@
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
##@Version : 202511291011-git
# @@Author : CasjaysDev
# @@Contact : CasjaysDev <docker-admin@casjaysdev.pro>
# @@License : MIT
# @@Copyright : Copyright 2025 CasjaysDev
# @@Created : Tue Nov 29 10:11:00 AM EDT 2025
# @@File : .env.scripts.22
# @@Description : Variables for Node.js 22 build
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
# 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.22"
ENV_IMAGE_NAME="nodejs"
ENV_USE_TEMPLATE="debian"
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
# 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/nodejs"
ENV_REGISTRY_URL="docker.io"
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
# Push image info
ENV_IMAGE_PUSH="casjaysdevdocker/nodejs"
ENV_IMAGE_TAG="22"
ENV_ADD_TAGS=""
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
ENV_ADD_IMAGE_PUSH=""
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
# Pull image info
ENV_PULL_URL="debian"
ENV_DISTRO_TAG="latest"
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
# Env
SERVICE_PORT="80"
EXPOSE_PORTS=""
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
# Versions
PHP_VERSION="system"
NODE_VERSION="22"
NODE_MANAGER="system"
MONGODB_VERSION="7.0"
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
# 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="gnupg curl ca-certificates apt-transport-https"
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
+61
View File
@@ -0,0 +1,61 @@
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
##@Version : 202511291011-git
# @@Author : CasjaysDev
# @@Contact : CasjaysDev <docker-admin@casjaysdev.pro>
# @@License : MIT
# @@Copyright : Copyright 2025 CasjaysDev
# @@Created : Tue Nov 29 10:11:00 AM EDT 2025
# @@File : .env.scripts.23
# @@Description : Variables for Node.js 23 build
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
# 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.23"
ENV_IMAGE_NAME="nodejs"
ENV_USE_TEMPLATE="debian"
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
# 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/nodejs"
ENV_REGISTRY_URL="docker.io"
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
# Push image info
ENV_IMAGE_PUSH="casjaysdevdocker/nodejs"
ENV_IMAGE_TAG="23"
ENV_ADD_TAGS=""
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
ENV_ADD_IMAGE_PUSH=""
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
# Pull image info
ENV_PULL_URL="debian"
ENV_DISTRO_TAG="latest"
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
# Env
SERVICE_PORT="80"
EXPOSE_PORTS=""
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
# Versions
PHP_VERSION="system"
NODE_VERSION="23"
NODE_MANAGER="system"
MONGODB_VERSION="7.0"
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
# 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="gnupg curl ca-certificates apt-transport-https"
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
+61
View File
@@ -0,0 +1,61 @@
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
##@Version : 202511291011-git
# @@Author : CasjaysDev
# @@Contact : CasjaysDev <docker-admin@casjaysdev.pro>
# @@License : MIT
# @@Copyright : Copyright 2025 CasjaysDev
# @@Created : Tue Nov 29 10:11:00 AM EDT 2025
# @@File : .env.scripts.24
# @@Description : Variables for Node.js 24 build
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
# 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.24"
ENV_IMAGE_NAME="nodejs"
ENV_USE_TEMPLATE="debian"
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
# 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/nodejs"
ENV_REGISTRY_URL="docker.io"
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
# Push image info
ENV_IMAGE_PUSH="casjaysdevdocker/nodejs"
ENV_IMAGE_TAG="24"
ENV_ADD_TAGS=""
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
ENV_ADD_IMAGE_PUSH=""
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
# Pull image info
ENV_PULL_URL="debian"
ENV_DISTRO_TAG="latest"
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
# Env
SERVICE_PORT="80"
EXPOSE_PORTS=""
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
# Versions
PHP_VERSION="system"
NODE_VERSION="24"
NODE_MANAGER="system"
MONGODB_VERSION="7.0"
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
# 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="gnupg curl ca-certificates apt-transport-https"
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
+22 -3
View File
@@ -19,13 +19,14 @@ ARG EXPOSE_PORTS="1-65535"
ARG PHP_VERSION="php81" ARG PHP_VERSION="php81"
ARG NODE_VERSION="system" ARG NODE_VERSION="system"
ARG NODE_MANAGER="system" ARG NODE_MANAGER="system"
ARG MONGODB_VERSION="7.0"
ARG IMAGE_REPO="casjaysdevdocker/nodejs" ARG IMAGE_REPO="casjaysdevdocker/nodejs"
ARG IMAGE_VERSION="latest" ARG IMAGE_VERSION="latest"
ARG CONTAINER_VERSION="" ARG CONTAINER_VERSION=""
ARG PULL_URL="casjaysdev/debian" ARG PULL_URL="debian"
ARG DISTRO_VERSION="${IMAGE_VERSION}" ARG DISTRO_VERSION="bookworm"
ARG BUILD_VERSION="${BUILD_DATE}" ARG BUILD_VERSION="${BUILD_DATE}"
FROM tianon/gosu:latest AS gosu FROM tianon/gosu:latest AS gosu
@@ -50,12 +51,13 @@ ARG DEFAULT_TEMPLATE_DIR
ARG DISTRO_VERSION ARG DISTRO_VERSION
ARG NODE_VERSION ARG NODE_VERSION
ARG NODE_MANAGER ARG NODE_MANAGER
ARG MONGODB_VERSION
ARG PHP_VERSION ARG PHP_VERSION
ARG PHP_SERVER ARG PHP_SERVER
ARG SHELL_OPTS ARG SHELL_OPTS
ARG DEBIAN_FRONTEND ARG DEBIAN_FRONTEND
ARG PACK_LIST=" " ARG PACK_LIST="gnupg curl ca-certificates apt-transport-https"
ENV ENV=~/.profile ENV ENV=~/.profile
ENV SHELL="/bin/sh" ENV SHELL="/bin/sh"
@@ -107,6 +109,23 @@ RUN echo "Setting up and installing packages"; \
if [ -n "${PACK_LIST}" ];then echo "Installing packages: $PACK_LIST";echo "${PACK_LIST}" >/root/docker/setup/packages.txt;pkmgr install ${PACK_LIST};fi; \ if [ -n "${PACK_LIST}" ];then echo "Installing packages: $PACK_LIST";echo "${PACK_LIST}" >/root/docker/setup/packages.txt;pkmgr install ${PACK_LIST};fi; \
echo "" echo ""
RUN echo "Installing Node.js (latest LTS)"; \
$SHELL_OPTS; \
curl -fsSL https://deb.nodesource.com/setup_lts.x | bash -; \
pkmgr install nodejs; \
node --version && npm --version; \
echo ""
RUN echo "Installing MongoDB ${MONGODB_VERSION}"; \
$SHELL_OPTS; \
curl -fsSL https://pgp.mongodb.com/server-${MONGODB_VERSION}.asc | gpg --dearmor -o /usr/share/keyrings/mongodb-server-${MONGODB_VERSION}.gpg; \
echo "deb [ signed-by=/usr/share/keyrings/mongodb-server-${MONGODB_VERSION}.gpg ] http://repo.mongodb.org/apt/debian $(. /etc/os-release && echo "$VERSION_CODENAME")/mongodb-org/${MONGODB_VERSION} main" | tee /etc/apt/sources.list.d/mongodb-org-${MONGODB_VERSION}.list; \
pkmgr update; \
pkmgr install mongodb-org; \
mkdir -p /data/db/mongodb /var/log/mongodb; \
chown -R mongodb:mongodb /data/db/mongodb /var/log/mongodb; \
echo ""
RUN echo "Initializing packages before copying files to image"; \ RUN echo "Initializing packages before copying files to image"; \
$SHELL_OPTS; \ $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; \ 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; \
+23 -4
View File
@@ -1,4 +1,4 @@
# Docker image for nodejs using the alpine template # Docker image for nodejs using the debian template
ARG IMAGE_NAME="nodejs" ARG IMAGE_NAME="nodejs"
ARG PHP_SERVER="nodejs" ARG PHP_SERVER="nodejs"
ARG BUILD_DATE="202511291011" ARG BUILD_DATE="202511291011"
@@ -19,13 +19,14 @@ ARG EXPOSE_PORTS=""
ARG PHP_VERSION="system" ARG PHP_VERSION="system"
ARG NODE_VERSION="18" ARG NODE_VERSION="18"
ARG NODE_MANAGER="system" ARG NODE_MANAGER="system"
ARG MONGODB_VERSION="7.0"
ARG IMAGE_REPO="casjaysdevdocker/nodejs" ARG IMAGE_REPO="casjaysdevdocker/nodejs"
ARG IMAGE_VERSION="18" ARG IMAGE_VERSION="18"
ARG CONTAINER_VERSION="" ARG CONTAINER_VERSION=""
ARG PULL_URL="node" ARG PULL_URL="debian"
ARG DISTRO_VERSION="18-alpine" ARG DISTRO_VERSION="bookworm"
ARG BUILD_VERSION="${BUILD_DATE}" ARG BUILD_VERSION="${BUILD_DATE}"
FROM tianon/gosu:latest AS gosu FROM tianon/gosu:latest AS gosu
@@ -52,12 +53,13 @@ ARG DEFAULT_TEMPLATE_DIR
ARG DISTRO_VERSION ARG DISTRO_VERSION
ARG NODE_VERSION ARG NODE_VERSION
ARG NODE_MANAGER ARG NODE_MANAGER
ARG MONGODB_VERSION
ARG PHP_VERSION ARG PHP_VERSION
ARG PHP_SERVER ARG PHP_SERVER
ARG SHELL_OPTS ARG SHELL_OPTS
ARG DEBIAN_FRONTEND ARG DEBIAN_FRONTEND
ARG PACK_LIST=" " ARG PACK_LIST="gnupg curl ca-certificates apt-transport-https tini"
ENV ENV=~/.profile ENV ENV=~/.profile
ENV SHELL="/bin/sh" ENV SHELL="/bin/sh"
@@ -109,6 +111,23 @@ RUN echo "Setting up and installing packages"; \
if [ -n "${PACK_LIST}" ];then echo "Installing packages: $PACK_LIST";echo "${PACK_LIST}" >/root/docker/setup/packages.txt;pkmgr install ${PACK_LIST};fi; \ if [ -n "${PACK_LIST}" ];then echo "Installing packages: $PACK_LIST";echo "${PACK_LIST}" >/root/docker/setup/packages.txt;pkmgr install ${PACK_LIST};fi; \
echo "" echo ""
RUN echo "Installing Node.js ${NODE_VERSION}"; \
$SHELL_OPTS; \
curl -fsSL https://deb.nodesource.com/setup_${NODE_VERSION}.x | bash -; \
pkmgr install nodejs; \
node --version && npm --version; \
echo ""
RUN echo "Installing MongoDB ${MONGODB_VERSION}"; \
$SHELL_OPTS; \
curl -fsSL https://pgp.mongodb.com/server-${MONGODB_VERSION}.asc | gpg --dearmor -o /usr/share/keyrings/mongodb-server-${MONGODB_VERSION}.gpg; \
echo "deb [ signed-by=/usr/share/keyrings/mongodb-server-${MONGODB_VERSION}.gpg ] http://repo.mongodb.org/apt/debian $(. /etc/os-release && echo "$VERSION_CODENAME")/mongodb-org/${MONGODB_VERSION} main" | tee /etc/apt/sources.list.d/mongodb-org-${MONGODB_VERSION}.list; \
pkmgr update; \
pkmgr install mongodb-org; \
mkdir -p /data/db/mongodb /var/log/mongodb; \
chown -R mongodb:mongodb /data/db/mongodb /var/log/mongodb; \
echo ""
RUN echo "Initializing packages before copying files to image"; \ RUN echo "Initializing packages before copying files to image"; \
$SHELL_OPTS; \ $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; \ 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; \
+24 -4
View File
@@ -1,4 +1,4 @@
# Docker image for nodejs using the alpine template # Docker image for nodejs using the debian template
ARG IMAGE_NAME="nodejs" ARG IMAGE_NAME="nodejs"
ARG PHP_SERVER="nodejs" ARG PHP_SERVER="nodejs"
ARG BUILD_DATE="202511291011" ARG BUILD_DATE="202511291011"
@@ -19,13 +19,14 @@ ARG EXPOSE_PORTS=""
ARG PHP_VERSION="system" ARG PHP_VERSION="system"
ARG NODE_VERSION="20" ARG NODE_VERSION="20"
ARG NODE_MANAGER="system" ARG NODE_MANAGER="system"
ARG MONGODB_VERSION="7.0"
ARG IMAGE_REPO="casjaysdevdocker/nodejs" ARG IMAGE_REPO="casjaysdevdocker/nodejs"
ARG IMAGE_VERSION="20" ARG IMAGE_VERSION="20"
ARG CONTAINER_VERSION="" ARG CONTAINER_VERSION=""
ARG PULL_URL="node" ARG PULL_URL="debian"
ARG DISTRO_VERSION="20-alpine" ARG DISTRO_VERSION="bookworm"
ARG BUILD_VERSION="${BUILD_DATE}" ARG BUILD_VERSION="${BUILD_DATE}"
FROM tianon/gosu:latest AS gosu FROM tianon/gosu:latest AS gosu
@@ -52,12 +53,13 @@ ARG DEFAULT_TEMPLATE_DIR
ARG DISTRO_VERSION ARG DISTRO_VERSION
ARG NODE_VERSION ARG NODE_VERSION
ARG NODE_MANAGER ARG NODE_MANAGER
ARG MONGODB_VERSION
ARG PHP_VERSION ARG PHP_VERSION
ARG PHP_SERVER ARG PHP_SERVER
ARG SHELL_OPTS ARG SHELL_OPTS
ARG DEBIAN_FRONTEND ARG DEBIAN_FRONTEND
ARG PACK_LIST=" " ARG PACK_LIST="gnupg curl ca-certificates apt-transport-https"
ENV ENV=~/.profile ENV ENV=~/.profile
ENV SHELL="/bin/sh" ENV SHELL="/bin/sh"
@@ -109,6 +111,23 @@ RUN echo "Setting up and installing packages"; \
if [ -n "${PACK_LIST}" ];then echo "Installing packages: $PACK_LIST";echo "${PACK_LIST}" >/root/docker/setup/packages.txt;pkmgr install ${PACK_LIST};fi; \ if [ -n "${PACK_LIST}" ];then echo "Installing packages: $PACK_LIST";echo "${PACK_LIST}" >/root/docker/setup/packages.txt;pkmgr install ${PACK_LIST};fi; \
echo "" echo ""
RUN echo "Installing Node.js ${NODE_VERSION}"; \
$SHELL_OPTS; \
curl -fsSL https://deb.nodesource.com/setup_${NODE_VERSION}.x | bash -; \
pkmgr install nodejs; \
node --version && npm --version; \
echo ""
RUN echo "Installing MongoDB ${MONGODB_VERSION}"; \
$SHELL_OPTS; \
curl -fsSL https://pgp.mongodb.com/server-${MONGODB_VERSION}.asc | gpg --dearmor -o /usr/share/keyrings/mongodb-server-${MONGODB_VERSION}.gpg; \
echo "deb [ signed-by=/usr/share/keyrings/mongodb-server-${MONGODB_VERSION}.gpg ] http://repo.mongodb.org/apt/debian $(. /etc/os-release && echo "$VERSION_CODENAME")/mongodb-org/${MONGODB_VERSION} main" | tee /etc/apt/sources.list.d/mongodb-org-${MONGODB_VERSION}.list; \
pkmgr update; \
pkmgr install mongodb-org; \
mkdir -p /data/db/mongodb /var/log/mongodb; \
chown -R mongodb:mongodb /data/db/mongodb /var/log/mongodb; \
echo ""
RUN echo "Initializing packages before copying files to image"; \ RUN echo "Initializing packages before copying files to image"; \
$SHELL_OPTS; \ $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; \ 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; \
@@ -206,6 +225,7 @@ ARG DEFAULT_TEMPLATE_DIR
ARG DISTRO_VERSION ARG DISTRO_VERSION
ARG NODE_VERSION ARG NODE_VERSION
ARG NODE_MANAGER ARG NODE_MANAGER
ARG MONGODB_VERSION
ARG PHP_VERSION ARG PHP_VERSION
ARG PHP_SERVER ARG PHP_SERVER
ARG LICENSE="WTFPL" ARG LICENSE="WTFPL"
+24 -4
View File
@@ -1,4 +1,4 @@
# Docker image for nodejs using the alpine template # Docker image for nodejs using the debian template
ARG IMAGE_NAME="nodejs" ARG IMAGE_NAME="nodejs"
ARG PHP_SERVER="nodejs" ARG PHP_SERVER="nodejs"
ARG BUILD_DATE="202511291011" ARG BUILD_DATE="202511291011"
@@ -19,13 +19,14 @@ ARG EXPOSE_PORTS=""
ARG PHP_VERSION="system" ARG PHP_VERSION="system"
ARG NODE_VERSION="22" ARG NODE_VERSION="22"
ARG NODE_MANAGER="system" ARG NODE_MANAGER="system"
ARG MONGODB_VERSION="7.0"
ARG IMAGE_REPO="casjaysdevdocker/nodejs" ARG IMAGE_REPO="casjaysdevdocker/nodejs"
ARG IMAGE_VERSION="22" ARG IMAGE_VERSION="22"
ARG CONTAINER_VERSION="" ARG CONTAINER_VERSION=""
ARG PULL_URL="node" ARG PULL_URL="debian"
ARG DISTRO_VERSION="22-alpine" ARG DISTRO_VERSION="bookworm"
ARG BUILD_VERSION="${BUILD_DATE}" ARG BUILD_VERSION="${BUILD_DATE}"
FROM tianon/gosu:latest AS gosu FROM tianon/gosu:latest AS gosu
@@ -52,12 +53,13 @@ ARG DEFAULT_TEMPLATE_DIR
ARG DISTRO_VERSION ARG DISTRO_VERSION
ARG NODE_VERSION ARG NODE_VERSION
ARG NODE_MANAGER ARG NODE_MANAGER
ARG MONGODB_VERSION
ARG PHP_VERSION ARG PHP_VERSION
ARG PHP_SERVER ARG PHP_SERVER
ARG SHELL_OPTS ARG SHELL_OPTS
ARG DEBIAN_FRONTEND ARG DEBIAN_FRONTEND
ARG PACK_LIST=" " ARG PACK_LIST="gnupg curl ca-certificates apt-transport-https"
ENV ENV=~/.profile ENV ENV=~/.profile
ENV SHELL="/bin/sh" ENV SHELL="/bin/sh"
@@ -109,6 +111,23 @@ RUN echo "Setting up and installing packages"; \
if [ -n "${PACK_LIST}" ];then echo "Installing packages: $PACK_LIST";echo "${PACK_LIST}" >/root/docker/setup/packages.txt;pkmgr install ${PACK_LIST};fi; \ if [ -n "${PACK_LIST}" ];then echo "Installing packages: $PACK_LIST";echo "${PACK_LIST}" >/root/docker/setup/packages.txt;pkmgr install ${PACK_LIST};fi; \
echo "" echo ""
RUN echo "Installing Node.js ${NODE_VERSION}"; \
$SHELL_OPTS; \
curl -fsSL https://deb.nodesource.com/setup_${NODE_VERSION}.x | bash -; \
pkmgr install nodejs; \
node --version && npm --version; \
echo ""
RUN echo "Installing MongoDB ${MONGODB_VERSION}"; \
$SHELL_OPTS; \
curl -fsSL https://pgp.mongodb.com/server-${MONGODB_VERSION}.asc | gpg --dearmor -o /usr/share/keyrings/mongodb-server-${MONGODB_VERSION}.gpg; \
echo "deb [ signed-by=/usr/share/keyrings/mongodb-server-${MONGODB_VERSION}.gpg ] http://repo.mongodb.org/apt/debian $(. /etc/os-release && echo "$VERSION_CODENAME")/mongodb-org/${MONGODB_VERSION} main" | tee /etc/apt/sources.list.d/mongodb-org-${MONGODB_VERSION}.list; \
pkmgr update; \
pkmgr install mongodb-org; \
mkdir -p /data/db/mongodb /var/log/mongodb; \
chown -R mongodb:mongodb /data/db/mongodb /var/log/mongodb; \
echo ""
RUN echo "Initializing packages before copying files to image"; \ RUN echo "Initializing packages before copying files to image"; \
$SHELL_OPTS; \ $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; \ 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; \
@@ -206,6 +225,7 @@ ARG DEFAULT_TEMPLATE_DIR
ARG DISTRO_VERSION ARG DISTRO_VERSION
ARG NODE_VERSION ARG NODE_VERSION
ARG NODE_MANAGER ARG NODE_MANAGER
ARG MONGODB_VERSION
ARG PHP_VERSION ARG PHP_VERSION
ARG PHP_SERVER ARG PHP_SERVER
ARG LICENSE="WTFPL" ARG LICENSE="WTFPL"
+24 -4
View File
@@ -1,4 +1,4 @@
# Docker image for nodejs using the alpine template # Docker image for nodejs using the debian template
ARG IMAGE_NAME="nodejs" ARG IMAGE_NAME="nodejs"
ARG PHP_SERVER="nodejs" ARG PHP_SERVER="nodejs"
ARG BUILD_DATE="202511291011" ARG BUILD_DATE="202511291011"
@@ -19,13 +19,14 @@ ARG EXPOSE_PORTS=""
ARG PHP_VERSION="system" ARG PHP_VERSION="system"
ARG NODE_VERSION="23" ARG NODE_VERSION="23"
ARG NODE_MANAGER="system" ARG NODE_MANAGER="system"
ARG MONGODB_VERSION="7.0"
ARG IMAGE_REPO="casjaysdevdocker/nodejs" ARG IMAGE_REPO="casjaysdevdocker/nodejs"
ARG IMAGE_VERSION="23" ARG IMAGE_VERSION="23"
ARG CONTAINER_VERSION="" ARG CONTAINER_VERSION=""
ARG PULL_URL="node" ARG PULL_URL="debian"
ARG DISTRO_VERSION="23-alpine" ARG DISTRO_VERSION="bookworm"
ARG BUILD_VERSION="${BUILD_DATE}" ARG BUILD_VERSION="${BUILD_DATE}"
FROM tianon/gosu:latest AS gosu FROM tianon/gosu:latest AS gosu
@@ -52,12 +53,13 @@ ARG DEFAULT_TEMPLATE_DIR
ARG DISTRO_VERSION ARG DISTRO_VERSION
ARG NODE_VERSION ARG NODE_VERSION
ARG NODE_MANAGER ARG NODE_MANAGER
ARG MONGODB_VERSION
ARG PHP_VERSION ARG PHP_VERSION
ARG PHP_SERVER ARG PHP_SERVER
ARG SHELL_OPTS ARG SHELL_OPTS
ARG DEBIAN_FRONTEND ARG DEBIAN_FRONTEND
ARG PACK_LIST=" " ARG PACK_LIST="gnupg curl ca-certificates apt-transport-https"
ENV ENV=~/.profile ENV ENV=~/.profile
ENV SHELL="/bin/sh" ENV SHELL="/bin/sh"
@@ -109,6 +111,23 @@ RUN echo "Setting up and installing packages"; \
if [ -n "${PACK_LIST}" ];then echo "Installing packages: $PACK_LIST";echo "${PACK_LIST}" >/root/docker/setup/packages.txt;pkmgr install ${PACK_LIST};fi; \ if [ -n "${PACK_LIST}" ];then echo "Installing packages: $PACK_LIST";echo "${PACK_LIST}" >/root/docker/setup/packages.txt;pkmgr install ${PACK_LIST};fi; \
echo "" echo ""
RUN echo "Installing Node.js ${NODE_VERSION}"; \
$SHELL_OPTS; \
curl -fsSL https://deb.nodesource.com/setup_${NODE_VERSION}.x | bash -; \
pkmgr install nodejs; \
node --version && npm --version; \
echo ""
RUN echo "Installing MongoDB ${MONGODB_VERSION}"; \
$SHELL_OPTS; \
curl -fsSL https://pgp.mongodb.com/server-${MONGODB_VERSION}.asc | gpg --dearmor -o /usr/share/keyrings/mongodb-server-${MONGODB_VERSION}.gpg; \
echo "deb [ signed-by=/usr/share/keyrings/mongodb-server-${MONGODB_VERSION}.gpg ] http://repo.mongodb.org/apt/debian $(. /etc/os-release && echo "$VERSION_CODENAME")/mongodb-org/${MONGODB_VERSION} main" | tee /etc/apt/sources.list.d/mongodb-org-${MONGODB_VERSION}.list; \
pkmgr update; \
pkmgr install mongodb-org; \
mkdir -p /data/db/mongodb /var/log/mongodb; \
chown -R mongodb:mongodb /data/db/mongodb /var/log/mongodb; \
echo ""
RUN echo "Initializing packages before copying files to image"; \ RUN echo "Initializing packages before copying files to image"; \
$SHELL_OPTS; \ $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; \ 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; \
@@ -206,6 +225,7 @@ ARG DEFAULT_TEMPLATE_DIR
ARG DISTRO_VERSION ARG DISTRO_VERSION
ARG NODE_VERSION ARG NODE_VERSION
ARG NODE_MANAGER ARG NODE_MANAGER
ARG MONGODB_VERSION
ARG PHP_VERSION ARG PHP_VERSION
ARG PHP_SERVER ARG PHP_SERVER
ARG LICENSE="WTFPL" ARG LICENSE="WTFPL"
+278
View File
@@ -0,0 +1,278 @@
# Docker image for nodejs using the debian template
ARG IMAGE_NAME="nodejs"
ARG PHP_SERVER="nodejs"
ARG BUILD_DATE="202511291011"
ARG LANGUAGE="en_US.UTF-8"
ARG TIMEZONE="America/New_York"
ARG WWW_ROOT_DIR="/usr/local/share/httpd/default"
ARG DEFAULT_FILE_DIR="/usr/local/share/template-files"
ARG DEFAULT_DATA_DIR="/usr/local/share/template-files/data"
ARG DEFAULT_CONF_DIR="/usr/local/share/template-files/config"
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 USER="root"
ARG SHELL_OPTS="set -e -o pipefail"
ARG SERVICE_PORT="80"
ARG EXPOSE_PORTS=""
ARG PHP_VERSION="system"
ARG NODE_VERSION="24"
ARG NODE_MANAGER="system"
ARG MONGODB_VERSION="7.0"
ARG IMAGE_REPO="casjaysdevdocker/nodejs"
ARG IMAGE_VERSION="24"
ARG CONTAINER_VERSION=""
ARG PULL_URL="debian"
ARG DISTRO_VERSION="bookworm"
ARG BUILD_VERSION="${BUILD_DATE}"
FROM tianon/gosu:latest AS gosu
FROM ${PULL_URL}:${DISTRO_VERSION} AS build
ARG TZ
ARG PATH
ARG USER
ARG LICENSE
ARG TIMEZONE
ARG LANGUAGE
ARG IMAGE_NAME
ARG BUILD_DATE
ARG SERVICE_PORT
ARG EXPOSE_PORTS
ARG BUILD_VERSION
ARG IMAGE_VERSION
ARG WWW_ROOT_DIR
ARG DEFAULT_FILE_DIR
ARG DEFAULT_DATA_DIR
ARG DEFAULT_CONF_DIR
ARG DEFAULT_TEMPLATE_DIR
ARG DISTRO_VERSION
ARG NODE_VERSION
ARG NODE_MANAGER
ARG MONGODB_VERSION
ARG PHP_VERSION
ARG PHP_SERVER
ARG SHELL_OPTS
ARG DEBIAN_FRONTEND
ARG PACK_LIST="gnupg curl ca-certificates apt-transport-https tini"
ENV ENV=~/.profile
ENV SHELL="/bin/sh"
ENV PATH="${PATH}"
ENV TZ="${TIMEZONE}"
ENV TIMEZONE="${TZ}"
ENV LANG="${LANGUAGE}"
ENV LC_ALL="${LANGUAGE}"
ENV TERM="xterm-256color"
ENV HOSTNAME="casjaysdevdocker-nodejs"
ENV DEBIAN_FRONTEND="${DEBIAN_FRONTEND}"
USER ${USER}
WORKDIR /root
COPY ./rootfs/usr/local/bin/. /usr/local/bin/
RUN set -e; \
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
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 "Installing Node.js ${NODE_VERSION}"; \
$SHELL_OPTS; \
curl -fsSL https://deb.nodesource.com/setup_${NODE_VERSION}.x | bash -; \
pkmgr install nodejs; \
node --version && npm --version; \
echo ""
RUN echo "Installing MongoDB ${MONGODB_VERSION}"; \
$SHELL_OPTS; \
curl -fsSL https://pgp.mongodb.com/server-${MONGODB_VERSION}.asc | gpg --dearmor -o /usr/share/keyrings/mongodb-server-${MONGODB_VERSION}.gpg; \
echo "deb [ signed-by=/usr/share/keyrings/mongodb-server-${MONGODB_VERSION}.gpg ] http://repo.mongodb.org/apt/debian $(. /etc/os-release && echo "$VERSION_CODENAME")/mongodb-org/${MONGODB_VERSION} main" | tee /etc/apt/sources.list.d/mongodb-org-${MONGODB_VERSION}.list; \
pkmgr update; \
pkmgr install mongodb-org; \
mkdir -p /data/db/mongodb /var/log/mongodb; \
chown -R mongodb:mongodb /data/db/mongodb /var/log/mongodb; \
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 ./Dockerfile /root/docker/Dockerfile
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 ""
RUN echo "Custom Settings"; \
$SHELL_OPTS; \
echo ""
RUN echo "Setting up users and scripts "; \
$SHELL_OPTS; \
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; \
echo ""
RUN echo "Running the user init commands"; \
$SHELL_OPTS; \
echo ""
RUN echo "Setting OS Settings "; \
$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"
FROM scratch
ARG TZ
ARG PATH
ARG USER
ARG TIMEZONE
ARG LANGUAGE
ARG IMAGE_NAME
ARG BUILD_DATE
ARG SERVICE_PORT
ARG EXPOSE_PORTS
ARG BUILD_VERSION
ARG IMAGE_VERSION
ARG WWW_ROOT_DIR
ARG DEFAULT_FILE_DIR
ARG DEFAULT_DATA_DIR
ARG DEFAULT_CONF_DIR
ARG DEFAULT_TEMPLATE_DIR
ARG DISTRO_VERSION
ARG NODE_VERSION
ARG NODE_MANAGER
ARG PHP_VERSION
ARG PHP_SERVER
ARG LICENSE="WTFPL"
ARG ENV_PORTS="${EXPOSE_PORTS}"
USER ${USER}
WORKDIR /root
LABEL maintainer="CasjaysDev <docker-admin@casjaysdev.pro>"
LABEL org.opencontainers.image.vendor="CasjaysDev"
LABEL org.opencontainers.image.authors="CasjaysDev"
LABEL org.opencontainers.image.description="Containerized version of ${IMAGE_NAME}"
LABEL org.opencontainers.image.title="${IMAGE_NAME}"
LABEL org.opencontainers.image.base.name="${IMAGE_NAME}"
LABEL org.opencontainers.image.authors="${LICENSE}"
LABEL org.opencontainers.image.created="${BUILD_DATE}"
LABEL org.opencontainers.image.version="${BUILD_VERSION}"
LABEL org.opencontainers.image.schema-version="${BUILD_VERSION}"
LABEL org.opencontainers.image.url="docker.io"
LABEL org.opencontainers.image.source="docker.io"
LABEL org.opencontainers.image.vcs-type="Git"
LABEL org.opencontainers.image.revision="${BUILD_VERSION}"
LABEL org.opencontainers.image.source="https://github.com/casjaysdevdocker/nodejs"
LABEL org.opencontainers.image.documentation="https://github.com/casjaysdevdocker/nodejs"
LABEL com.github.containers.toolbox="false"
ENV ENV=~/.bashrc
ENV USER="${USER}"
ENV PATH="${PATH}"
ENV TZ="${TIMEZONE}"
ENV SHELL="/bin/bash"
ENV TIMEZONE="${TZ}"
ENV LANG="${LANGUAGE}"
ENV TERM="xterm-256color"
ENV PORT="${SERVICE_PORT}"
ENV ENV_PORTS="${ENV_PORTS}"
ENV CONTAINER_NAME="${IMAGE_NAME}"
ENV HOSTNAME="casjaysdev-${IMAGE_NAME}"
ENV PHP_SERVER="${PHP_SERVER}"
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 /. /
VOLUME [ "/config","/data" ]
EXPOSE ${SERVICE_PORT} ${ENV_PORTS}
ENTRYPOINT [ "tini","--","/usr/local/bin/entrypoint.sh" ]
HEALTHCHECK --start-period=10m --interval=5m --timeout=15s CMD [ "/usr/local/bin/entrypoint.sh", "healthcheck" ]
+97
View File
@@ -0,0 +1,97 @@
#!/usr/bin/env bash
# shellcheck shell=bash
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
##@Version : 202601290255-git
# @@Author : CasjaysDev
# @@Contact : CasjaysDev <docker-admin@casjaysdev.pro>
# @@License : MIT
# @@ReadME :
# @@Copyright : Copyright 2025 CasjaysDev
# @@Created : Wed Jan 29 02:55:00 AM EST 2026
# @@File : mongodb
# @@Description : MongoDB initialization script
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
# shellcheck disable=SC2016
# shellcheck disable=SC2031
# shellcheck disable=SC2120
# shellcheck disable=SC2155
# shellcheck disable=SC2199
# shellcheck disable=SC2317
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
APPNAME="$(basename "$0" 2>/dev/null)"
VERSION="202601290255-git"
HOME="${USER_HOME:-$HOME}"
USER="${SUDO_USER:-$USER}"
RUN_USER="${SUDO_USER:-$USER}"
SCRIPT_SRC_DIR="${BASH_SOURCE%/*}"
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
# Set bash options
[ "$DEBUGGER" = "on" ] && echo "Enabling debugging" && set -o pipefail -x$DEBUGGER_OPTIONS || set -o pipefail
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
# check for command
__cmd_exists() { command -v "$1" >/dev/null 2>&1 || return 1; }
__function_exists() { builtin type -t "${1:-404}" 2>/dev/null | grep -q 'function' || return 1; }
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
# Make sure mongod is installed
if ! __cmd_exists mongod; then
echo "MongoDB is not installed"
exit 0
fi
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
# Set variables
MONGODB_DATA_DIR="${MONGODB_DATA_DIR:-${DATABASE_DIR_MONGODB:-/data/db/mongodb}}"
MONGODB_LOG_DIR="${MONGODB_LOG_DIR:-/var/log/mongodb}"
MONGODB_LOG_FILE="${MONGODB_LOG_FILE:-$MONGODB_LOG_DIR/mongod.log}"
MONGODB_PORT="${MONGODB_PORT:-27017}"
MONGODB_BIND_IP="${MONGODB_BIND_IP:-0.0.0.0}"
MONGODB_USER="${MONGODB_USER:-mongodb}"
MONGODB_CONFIG_FILE="${MONGODB_CONFIG_FILE:-/etc/mongod.conf}"
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
# Ensure directories exist
mkdir -p "$MONGODB_DATA_DIR" "$MONGODB_LOG_DIR"
touch "$MONGODB_LOG_FILE"
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
# Set permissions
if id "$MONGODB_USER" >/dev/null 2>&1; then
chown -Rf "$MONGODB_USER:$MONGODB_USER" "$MONGODB_DATA_DIR" "$MONGODB_LOG_DIR" 2>/dev/null
chmod -Rf 755 "$MONGODB_DATA_DIR" "$MONGODB_LOG_DIR" 2>/dev/null
fi
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
# Create basic config if it doesn't exist
if [ ! -f "$MONGODB_CONFIG_FILE" ]; then
cat <<EOF >"$MONGODB_CONFIG_FILE"
# MongoDB configuration file
storage:
dbPath: $MONGODB_DATA_DIR
journal:
enabled: true
systemLog:
destination: file
logAppend: true
path: $MONGODB_LOG_FILE
net:
port: $MONGODB_PORT
bindIp: $MONGODB_BIND_IP
processManagement:
timeZoneInfo: /usr/share/zoneinfo
EOF
fi
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
echo "Starting MongoDB on port $MONGODB_PORT"
echo "Data directory: $MONGODB_DATA_DIR"
echo "Log file: $MONGODB_LOG_FILE"
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
# Start MongoDB in background
if [ -f "$MONGODB_CONFIG_FILE" ]; then
mongod --config "$MONGODB_CONFIG_FILE" &
else
mongod --dbpath "$MONGODB_DATA_DIR" --logpath "$MONGODB_LOG_FILE" --port "$MONGODB_PORT" --bind_ip "$MONGODB_BIND_IP" &
fi
# Wait a moment for MongoDB to start
sleep 2
echo "MongoDB started"
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
# End script
+159
View File
@@ -0,0 +1,159 @@
#!/usr/bin/env bash
# shellcheck shell=bash
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
##@Version : 202601290258-git
# @@Author : CasjaysDev
# @@Contact : CasjaysDev <docker-admin@casjaysdev.pro>
# @@License : MIT
# @@ReadME :
# @@Copyright : Copyright 2025 CasjaysDev
# @@Created : Wed Jan 29 02:58:00 AM EST 2026
# @@File : nodejs
# @@Description : Node.js application initialization script
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
# shellcheck disable=SC2016
# shellcheck disable=SC2031
# shellcheck disable=SC2120
# shellcheck disable=SC2155
# shellcheck disable=SC2199
# shellcheck disable=SC2317
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
APPNAME="$(basename "$0" 2>/dev/null)"
VERSION="202601290258-git"
HOME="${USER_HOME:-$HOME}"
USER="${SUDO_USER:-$USER}"
RUN_USER="${SUDO_USER:-$USER}"
SCRIPT_SRC_DIR="${BASH_SOURCE%/*}"
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
# Set bash options
[ "$DEBUGGER" = "on" ] && echo "Enabling debugging" && set -o pipefail -x$DEBUGGER_OPTIONS || set -o pipefail
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
# check for command
__cmd_exists() { command -v "$1" >/dev/null 2>&1 || return 1; }
__function_exists() { builtin type -t "${1:-404}" 2>/dev/null | grep -q 'function' || return 1; }
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
# Make sure node is installed
if ! __cmd_exists node; then
echo "Node.js is not installed"
exit 0
fi
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
# Set variables
NODE_ENV="${NODE_ENV:-production}"
NODE_APP_DIR="${NODE_APP_DIR:-}"
NODE_APP_SCRIPT="${NODE_APP_SCRIPT:-}"
NODE_PORT="${NODE_PORT:-${PORT:-3000}}"
NODE_HOST="${NODE_HOST:-0.0.0.0}"
NODE_OPTIONS="${NODE_OPTIONS:-}"
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
# Find application directory
if [ -z "$NODE_APP_DIR" ]; then
for dir in /app /data/app /workspace /usr/src/app; do
if [ -d "$dir" ]; then
NODE_APP_DIR="$dir"
break
fi
done
fi
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
# Check if app directory exists
if [ -z "$NODE_APP_DIR" ] || [ ! -d "$NODE_APP_DIR" ]; then
echo "No Node.js application directory found"
echo "Checked: /app, /data/app, /workspace, /usr/src/app"
echo "To specify a custom location, set NODE_APP_DIR environment variable"
exit 0
fi
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
# Change to app directory
cd "$NODE_APP_DIR" || exit 1
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
# Find the entry script if not specified
if [ -z "$NODE_APP_SCRIPT" ]; then
if [ -f "package.json" ]; then
# Try to get the start script from package.json
if __cmd_exists jq; then
NODE_APP_SCRIPT="$(jq -r '.main // empty' package.json 2>/dev/null)"
fi
# Fallback to common entry points
[ -z "$NODE_APP_SCRIPT" ] && [ -f "index.js" ] && NODE_APP_SCRIPT="index.js"
[ -z "$NODE_APP_SCRIPT" ] && [ -f "server.js" ] && NODE_APP_SCRIPT="server.js"
[ -z "$NODE_APP_SCRIPT" ] && [ -f "app.js" ] && NODE_APP_SCRIPT="app.js"
[ -z "$NODE_APP_SCRIPT" ] && [ -f "main.js" ] && NODE_APP_SCRIPT="main.js"
fi
fi
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
# Check if we have a valid script to run
if [ -z "$NODE_APP_SCRIPT" ] && [ ! -f "package.json" ]; then
echo "No Node.js application found in $NODE_APP_DIR"
echo "Looked for: index.js, server.js, app.js, main.js, package.json"
exit 0
fi
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
# Install dependencies if needed
if [ -f "package.json" ] && [ ! -d "node_modules" ]; then
echo "Installing Node.js dependencies..."
if __cmd_exists yarn; then
yarn install
elif __cmd_exists pnpm; then
pnpm install
else
npm install
fi
fi
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
# Export environment variables
export NODE_ENV NODE_PORT NODE_HOST NODE_OPTIONS
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
echo "Starting Node.js application"
echo "Environment: $NODE_ENV"
echo "Directory: $NODE_APP_DIR"
echo "Port: $NODE_PORT"
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
# Start the application based on environment
if [ "$NODE_ENV" = "development" ] || [ "$NODE_ENV" = "dev" ]; then
echo "Mode: Development (with file watching)"
# Try to use nodemon if available
if __cmd_exists nodemon; then
echo "Using nodemon for hot reload"
if [ -f "package.json" ] && grep -q '"dev"\|"start:dev"' package.json 2>/dev/null; then
exec npm run dev
elif [ -n "$NODE_APP_SCRIPT" ]; then
exec nodemon "$NODE_APP_SCRIPT"
else
exec nodemon
fi
# Fallback to node with --watch (Node.js 18+)
elif node --help 2>&1 | grep -q -- '--watch'; then
echo "Using node --watch for hot reload"
if [ -n "$NODE_APP_SCRIPT" ]; then
exec node --watch "$NODE_APP_SCRIPT"
else
exec node --watch .
fi
# Just use regular node
else
echo "Warning: nodemon not found and node --watch not available"
echo "Install nodemon for hot reload: npm install -g nodemon"
if [ -n "$NODE_APP_SCRIPT" ]; then
exec node "$NODE_APP_SCRIPT"
else
exec npm start
fi
fi
else
echo "Mode: Production"
# Use package.json start script if available
if [ -f "package.json" ] && grep -q '"start"' package.json 2>/dev/null; then
exec npm start
# Otherwise run the script directly
elif [ -n "$NODE_APP_SCRIPT" ]; then
exec node "$NODE_APP_SCRIPT"
else
echo "Error: No start script found"
exit 1
fi
fi
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
# End script
@@ -1,6 +1,14 @@
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - # - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
# mongodb env # mongodb env
DATABASE_DIR_MONGODB="${DATABASE_DIR_MONGODB:-/data/db/mongodb}" MONGODB_VERSION="${MONGODB_VERSION:-7.0}"
MONGODB_PORT="${MONGODB_PORT:-27017}"
MONGODB_BIND_IP="${MONGODB_BIND_IP:-0.0.0.0}"
MONGODB_USER="${MONGODB_USER:-mongodb}"
MONGODB_CONFIG_FILE="${MONGODB_CONFIG_FILE:-/etc/mongod.conf}"
MONGODB_DATA_DIR="${MONGODB_DATA_DIR:-/data/db/mongodb}"
MONGODB_LOG_DIR="${MONGODB_LOG_DIR:-/var/log/mongodb}"
MONGODB_LOG_FILE="${MONGODB_LOG_FILE:-$MONGODB_LOG_DIR/mongod.log}"
DATABASE_DIR_MONGODB="${DATABASE_DIR_MONGODB:-$MONGODB_DATA_DIR}"
INITDB_ROOT_USERNAME="${DATABASE_USER_ROOT:-$INITDB_ROOT_USERNAME}" INITDB_ROOT_USERNAME="${DATABASE_USER_ROOT:-$INITDB_ROOT_USERNAME}"
MONGO_INITDB_ROOT_PASSWORD="${DATABASE_PASS_ROOT:-$MONGO_INITDB_ROOT_PASSWORD}" MONGO_INITDB_ROOT_PASSWORD="${DATABASE_PASS_ROOT:-$MONGO_INITDB_ROOT_PASSWORD}"
ME_CONFIG_EDITORTHEME="${ME_CONFIG_EDITORTHEME:-dracula}" ME_CONFIG_EDITORTHEME="${ME_CONFIG_EDITORTHEME:-dracula}"