Compare commits
2 Commits
f1c348f974
...
7de989dbde
Author | SHA1 | Date | |
---|---|---|---|
![]() |
7de989dbde | ||
![]() |
2f847a6dbe |
2
.env
2
.env
@@ -14,4 +14,4 @@ NGINX_HTTPS_IPV6_PORT=8843
|
|||||||
NGINX_CONTAINER_HTTP_PORT=80
|
NGINX_CONTAINER_HTTP_PORT=80
|
||||||
NGINX_CONTAINER_HTTPS_PORT=443
|
NGINX_CONTAINER_HTTPS_PORT=443
|
||||||
|
|
||||||
PHP_VERSIONS= # Set this without quotes! example: 8.1 7.1 7.3
|
PHP_VERSIONS=
|
||||||
|
0
del_vols.sh
Normal file → Executable file
0
del_vols.sh
Normal file → Executable file
@@ -1,7 +1,6 @@
|
|||||||
services:
|
services:
|
||||||
nginx-srv:
|
nginx-srv:
|
||||||
image: eroncero/nginx-srv:latest
|
image: eroncero/nginx-srv:latest
|
||||||
hostname: nginx-srv
|
|
||||||
build:
|
build:
|
||||||
context: ./nginx-srv
|
context: ./nginx-srv
|
||||||
dockerfile: Dockerfile
|
dockerfile: Dockerfile
|
||||||
@@ -11,6 +10,7 @@ services:
|
|||||||
- "${NGINX_HTTPS_IPV4_HOST}:${NGINX_HTTPS_IPV4_PORT}:${NGINX_CONTAINER_HTTPS_PORT}"
|
- "${NGINX_HTTPS_IPV4_HOST}:${NGINX_HTTPS_IPV4_PORT}:${NGINX_CONTAINER_HTTPS_PORT}"
|
||||||
- "${NGINX_HTTPS_IPV6_HOST}:${NGINX_HTTPS_IPV6_PORT}:${NGINX_CONTAINER_HTTPS_PORT}"
|
- "${NGINX_HTTPS_IPV6_HOST}:${NGINX_HTTPS_IPV6_PORT}:${NGINX_CONTAINER_HTTPS_PORT}"
|
||||||
restart: unless-stopped
|
restart: unless-stopped
|
||||||
|
hostname: nginx-srv
|
||||||
volumes:
|
volumes:
|
||||||
- ./nginx-srv/etc/nginx/sites-available:/etc/nginx/sites-available
|
- ./nginx-srv/etc/nginx/sites-available:/etc/nginx/sites-available
|
||||||
- ./nginx-srv/var/www:/var/www
|
- ./nginx-srv/var/www:/var/www
|
||||||
@@ -19,8 +19,11 @@ services:
|
|||||||
|
|
||||||
multi-php-fpm:
|
multi-php-fpm:
|
||||||
image: eroncero/multi-php-fpm
|
image: eroncero/multi-php-fpm
|
||||||
hostname: multi-php-fpm
|
build:
|
||||||
|
context: ./multi-php-fpm
|
||||||
|
dockerfile: Dockerfile
|
||||||
restart: unless-stopped
|
restart: unless-stopped
|
||||||
|
hostname: multi-php-fpm
|
||||||
environment:
|
environment:
|
||||||
- PHP_VERSIONS=${PHP_VERSIONS} # Inherits from .env
|
- PHP_VERSIONS=${PHP_VERSIONS} # Inherits from .env
|
||||||
volumes:
|
volumes:
|
||||||
@@ -30,8 +33,11 @@ services:
|
|||||||
|
|
||||||
mariadb-srv:
|
mariadb-srv:
|
||||||
image: eroncero/mariadb-srv:latest
|
image: eroncero/mariadb-srv:latest
|
||||||
hostname: mariadb-srv
|
build:
|
||||||
|
context: ./mariadb-srv
|
||||||
|
dockerfile: Dockerfile
|
||||||
restart: unless-stopped
|
restart: unless-stopped
|
||||||
|
hostname: mariadb-srv
|
||||||
volumes:
|
volumes:
|
||||||
- ./mariadb-srv/var/lib/mysql:/var/lib/mysql
|
- ./mariadb-srv/var/lib/mysql:/var/lib/mysql
|
||||||
- ./mariadb-srv/etc/mysql:/etc/mysql
|
- ./mariadb-srv/etc/mysql:/etc/mysql
|
||||||
|
@@ -4,48 +4,75 @@ set -e
|
|||||||
export DEBIAN_FRONTEND=noninteractive
|
export DEBIAN_FRONTEND=noninteractive
|
||||||
export DEBCONF_NONINTERACTIVE_SEEN=true
|
export DEBCONF_NONINTERACTIVE_SEEN=true
|
||||||
|
|
||||||
|
# Validate required variables
|
||||||
|
if [ -z "${PHP_VERSIONS:-}" ]; then
|
||||||
|
echo "ERROR: PHP_VERSIONS environment variable is not set" >&2
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ -z "${DEF_PHP_INTERPRETER:-}" ]; then
|
||||||
|
echo "ERROR: DEF_PHP_INTERPRETER environment variable is not set" >&2
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Verify package availability before installation
|
||||||
apt-get update
|
apt-get update
|
||||||
|
|
||||||
|
# Install each PHP version with validation
|
||||||
for version in $PHP_VERSIONS; do
|
for version in $PHP_VERSIONS; do
|
||||||
echo "Installing PHP $version..."
|
# Validate version format (X.Y)
|
||||||
apt-get install -y \
|
if ! echo "$version" | grep -Eq '^[0-9]+\.[0-9]+$'; then
|
||||||
php$version-fpm \
|
echo "ERROR: Invalid PHP version format '$version'" >&2
|
||||||
php$version-bcmath \
|
exit 1
|
||||||
php$version-bz2 \
|
fi
|
||||||
php$version-common \
|
|
||||||
php$version-curl \
|
echo "Installing PHP $version packages..."
|
||||||
php$version-dba \
|
if ! apt-get install -y \
|
||||||
php$version-enchant \
|
php${version}-fpm \
|
||||||
php$version-gd \
|
php${version}-bcmath \
|
||||||
php$version-gmp \
|
php${version}-bz2 \
|
||||||
php$version-http \
|
php${version}-common \
|
||||||
php$version-imap \
|
php${version}-curl \
|
||||||
php$version-interbase \
|
php${version}-dba \
|
||||||
php$version-intl \
|
php${version}-enchant \
|
||||||
php$version-ldap \
|
php${version}-gd \
|
||||||
php$version-mbstring \
|
php${version}-gmp \
|
||||||
php$version-memcache \
|
php${version}-http \
|
||||||
php$version-memcached \
|
php${version}-imap \
|
||||||
php$version-mysql \
|
php${version}-interbase \
|
||||||
php$version-odbc \
|
php${version}-intl \
|
||||||
php$version-opcache \
|
php${version}-ldap \
|
||||||
php$version-pgsql \
|
php${version}-mbstring \
|
||||||
php$version-ps \
|
php${version}-memcache \
|
||||||
php$version-pspell \
|
php${version}-memcached \
|
||||||
php$version-raphf \
|
php${version}-mysql \
|
||||||
php$version-readline \
|
php${version}-odbc \
|
||||||
php$version-snmp \
|
php${version}-opcache \
|
||||||
php$version-soap \
|
php${version}-pgsql \
|
||||||
php$version-sqlite3 \
|
php${version}-ps \
|
||||||
php$version-stomp \
|
php${version}-pspell \
|
||||||
php$version-sybase \
|
php${version}-raphf \
|
||||||
php$version-tidy \
|
php${version}-readline \
|
||||||
php$version-xdebug \
|
php${version}-snmp \
|
||||||
php$version-xml \
|
php${version}-soap \
|
||||||
php$version-xsl \
|
php${version}-sqlite3 \
|
||||||
php$version-zip
|
php${version}-stomp \
|
||||||
|
php${version}-sybase \
|
||||||
|
php${version}-tidy \
|
||||||
|
php${version}-xdebug \
|
||||||
|
php${version}-xml \
|
||||||
|
php${version}-xsl \
|
||||||
|
php${version}-zip; then
|
||||||
|
echo "ERROR: Failed to install PHP $version packages" >&2
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
done
|
done
|
||||||
|
|
||||||
update-alternatives --set php /usr/bin/php$DEF_PHP_INTERPRETER
|
# Set default PHP version with validation
|
||||||
|
if ! update-alternatives --set php "/usr/bin/php${DEF_PHP_INTERPRETER}"; then
|
||||||
|
echo "ERROR: Failed to set default PHP interpreter to $DEF_PHP_INTERPRETER" >&2
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
/bin/sh /entrypoint/start-php-fpm.sh
|
# Start PHP-FPM services
|
||||||
|
exec /bin/sh /entrypoint/start-php-fpm.sh
|
||||||
|
Reference in New Issue
Block a user