diff --git a/nginx_web/entrypoint.sh b/nginx_web/entrypoint.sh index 3326ec3..afe3ee2 100644 --- a/nginx_web/entrypoint.sh +++ b/nginx_web/entrypoint.sh @@ -1,23 +1,41 @@ #!/bin/sh -if [ -n "$(getent passwd "$WWW_DATA_UID")" ] -then - USERNAME=$(getent passwd "$WWW_DATA_UID" | cut -d: -f1) - echo "Deleting user $USERNAME which already uses UID $WWW_DATA_UID" - deluser "$USERNAME" -fi - if [ -n "$(getent group "$WWW_DATA_GID")" ] then GROUPNAME=$(getent passwd "$WWW_DATA_GID" | cut -d: -f1) echo "Deleting group $GROUPNAME which already uses GID $WWW_DATA_GID" - delgroup "$GROUPNAME" + groupdel "$GROUPNAME" +else + echo "GID $WWW_DATA_GID not in use" fi -# for some reason, a www-data group exists by default but a www-data user doesn't -echo "Adding www-data user with UID $WWW_DATA_UID and setting www-data GID to $WWW_DATA_GID" -groupmod -g "$WWW_DATA_GID" www-data -adduser -D -G www-data -u "$WWW_DATA_UID" www-data +if [ -n "$(getent passwd "$WWW_DATA_UID")" ] +then + USERNAME=$(getent passwd "$WWW_DATA_UID" | cut -d: -f1) + echo "Deleting user $USERNAME which already uses UID $WWW_DATA_UID" + userdel "$USERNAME" +else + echo "UID $WWW_DATA_UID not in use" +fi + +if [ -n "$(getent group www-data)" ] +then + echo "Modifying existing www-data group, setting GID to $WWW_DATA_GID" + groupmod -g "$WWW_DATA_GID" www-data +else + echo "Adding www-data group with GID $WWW_DATA_GID" + groupadd -g "$WWW_DATA_GID" www-data +fi + +if [ -n "$(getent passwd www-data)" ] +then + echo "Modifying existing www-data user, setting GID to $WWW_DATA_GID" + usermod -g "$WWW_DATA_GID" www-data +else + echo "Adding www-data user with UID $WWW_DATA_UID and GID $WWW_DATA_GID" + getent passwd 1000 + useradd -u "$WWW_DATA_UID" -g "$WWW_DATA_GID" www-data +fi cat > /etc/nginx/php.conf << EOL upstream php-handler { diff --git a/php_fpm/Dockerfile b/php_fpm/Dockerfile index 317a593..f5be59c 100644 --- a/php_fpm/Dockerfile +++ b/php_fpm/Dockerfile @@ -25,7 +25,7 @@ RUN { \ ADD entrypoint.sh / -ARG VERSION=v2.0.0-pr12 +ARG VERSION=v2 ENV VERSION=${VERSION} # Used by website to know if it runs using our docker images for statistics diff --git a/php_fpm/entrypoint.sh b/php_fpm/entrypoint.sh index 137fc0c..0bca634 100644 --- a/php_fpm/entrypoint.sh +++ b/php_fpm/entrypoint.sh @@ -1,23 +1,42 @@ #!/bin/sh set -e -if [ -n "$(getent passwd "$WWW_DATA_UID")" ] -then - USERNAME=$(getent passwd "$WWW_DATA_UID" | cut -d: -f1) - echo "Deleting user $USERNAME which already uses UID $WWW_DATA_UID" - deluser "$USERNAME" -fi - if [ -n "$(getent group "$WWW_DATA_GID")" ] then GROUPNAME=$(getent passwd "$WWW_DATA_GID" | cut -d: -f1) echo "Deleting group $GROUPNAME which already uses GID $WWW_DATA_GID" - delgroup "$GROUPNAME" + groupdel "$GROUPNAME" +else + echo "GID $WWW_DATA_GID not in use" fi -echo "Setting www-data uid:gid to $WWW_DATA_UID:$WWW_DATA_GID" -usermod -u "$WWW_DATA_UID" www-data -groupmod -g "$WWW_DATA_GID" www-data +if [ -n "$(getent passwd "$WWW_DATA_UID")" ] +then + USERNAME=$(getent passwd "$WWW_DATA_UID" | cut -d: -f1) + echo "Deleting user $USERNAME which already uses UID $WWW_DATA_UID" + userdel "$USERNAME" +else + echo "UID $WWW_DATA_UID not in use" +fi + +if [ -n "$(getent group www-data)" ] +then + echo "Modifying existing www-data group, setting GID to $WWW_DATA_GID" + groupmod -g "$WWW_DATA_GID" www-data +else + echo "Adding www-data group with GID $WWW_DATA_GID" + groupadd -g "$WWW_DATA_GID" www-data +fi + +if [ -n "$(getent passwd www-data)" ] +then + echo "Modifying existing www-data user, setting GID to $WWW_DATA_GID" + usermod -g "$WWW_DATA_GID" www-data +else + echo "Adding www-data user with UID $WWW_DATA_UID and GID $WWW_DATA_GID" + getent passwd 1000 + useradd -u "$WWW_DATA_UID" -g "$WWW_DATA_GID" www-data +fi if [ -n "$(ls -A /data 2>/dev/null)" ] then @@ -54,4 +73,17 @@ else echo "Done!" fi +if [ -n "$NAMELESS_AUTO_INSTALL" ] +then + cd /data + if [ -f core/config.php ]; then + echo "core/config.php exists, not running installer." + else + echo "Going to run installer, first waiting 10 seconds for the database to start" + sleep 10 + echo "Running installer..." + php -f cli_install.php -- --iSwearIKnowWhatImDoing + fi +fi + exec php-fpm