From 4a7c468806389185f0b6a115e76979caee5ffdb2 Mon Sep 17 00:00:00 2001 From: 3wc <3wc@doesthisthing.work> Date: Mon, 23 Oct 2023 12:50:31 +0100 Subject: [PATCH] Add composer support --- .env.sample | 3 +++ abra.sh | 2 +- compose.yml | 1 + entrypoint.sh.tmpl | 12 ++++++++++++ 4 files changed, 17 insertions(+), 1 deletion(-) diff --git a/.env.sample b/.env.sample index 5fd9145..9134bcf 100644 --- a/.env.sample +++ b/.env.sample @@ -18,6 +18,9 @@ ADMIN_EMAIL=admin@example.com # Every new user is per default subscriber, uncomment to change it #DEFAULT_USER_ROLE=administrator +# Uncomment to install PHP Composer +#COMPOSER=1 + #WORDPRESS_DEBUG=true ## Additional extensions diff --git a/abra.sh b/abra.sh index 9d2472f..0c6384f 100644 --- a/abra.sh +++ b/abra.sh @@ -1,5 +1,5 @@ export PHP_UPLOADS_CONF_VERSION=v3 -export ENTRYPOINT_CONF_VERSION=v4 +export ENTRYPOINT_CONF_VERSION=v5 export ENTRYPOINT_MAILRELAY_CONF_VERSION=v2 export MSMTP_CONF_VERSION=v4 diff --git a/compose.yml b/compose.yml index 3297996..45a4d7a 100644 --- a/compose.yml +++ b/compose.yml @@ -22,6 +22,7 @@ services: WORDPRESS_TABLE_PREFIX: ${WORDPRESS_TABLE_PREFIX:-wp_} PHP_EXTENSIONS: ${PHP_EXTENSIONS} CORS_ALLOW_ALL: + COMPOSER: secrets: - db_password configs: diff --git a/entrypoint.sh.tmpl b/entrypoint.sh.tmpl index 34e276e..503d80f 100644 --- a/entrypoint.sh.tmpl +++ b/entrypoint.sh.tmpl @@ -7,6 +7,18 @@ docker-php-ext-install {{ env "PHP_EXTENSIONS" }} curl -z /usr/local/bin/wp -o /usr/local/bin/wp https://raw.githubusercontent.com/wp-cli/builds/gh-pages/phar/wp-cli.phar chmod +x /usr/local/bin/wp +{{ if eq (env "COMPOSER") "1" }} +mkdir -p /var/www/.composer +chown www-data:www-data /var/www/.composer + +curl https://getcomposer.org/installer -o /tmp/composer-setup.php +php -r "if (hash_file('sha384', '/tmp/composer-setup.php') === 'e21205b207c3ff031906575712edab6f13eb0b361f2085f1f1237b7126d785e826a450292b6cfd1d64d92e6563bbde02') { echo 'Installer verified'; } else { echo 'Installer corrupt'; unlink('composer-setup.php'); } echo PHP_EOL;" +php /tmp/composer-setup.php +rm /tmp/composer-setup.php + +mv /var/www/html/composer.phar /usr/local/bin/composer +{{ end }} + {{ if eq (env "CORS_ALLOW_ALL") "1" }} a2enmod headers sed -ri -e 's/^([ \t]*)(<\/VirtualHost>)/\1\tHeader set Access-Control-Allow-Origin "*"\n\1\2/g' /etc/apache2/sites-available/*.conf