Fixes, BoltCMS
All checks were successful
dockerbuild / Build docker image (push) Successful in 1m49s
All checks were successful
dockerbuild / Build docker image (push) Successful in 1m49s
This commit is contained in:
parent
3b6ead62b6
commit
5392cca13b
22
README.md
22
README.md
@ -1,3 +1,25 @@
|
||||
# NoccyLabs PHP 8.3 Alpine All-in-One Base Image
|
||||
|
||||
This is an AIO container done mostly right. It contains Nginx, PHP 8.3 and FPM preconfigured. It also comes with a watchdog that ensures that a failure will bring down the container, allowing for self-healing by recreating containers.
|
||||
|
||||
## Features
|
||||
|
||||
* Nginx and PHP in a single container.
|
||||
* Framework detection.
|
||||
* Plenty of hooks.
|
||||
|
||||
## Frameworks
|
||||
|
||||
### Symfony
|
||||
|
||||
Symfony projects are detected from the `symfony.lock` file.
|
||||
|
||||
The support will ensure that composer is installed, and that the cache directory is writable.
|
||||
|
||||
#### BoltCMS
|
||||
|
||||
BoltCMS is detected and configured by the Symfony framework support script.
|
||||
|
||||
### Composer
|
||||
|
||||
While not a frarmework, as a last resort the presence of a `composer.json` file will trigger an install.
|
||||
|
@ -7,10 +7,10 @@ fi
|
||||
|
||||
# Determine if this is a specific variant of Symfny
|
||||
if [ -d /application/config/bolt ]; then
|
||||
echo " => Detected Symfony (Bolt) project"
|
||||
echo " => Detected Symfony (Bolt) project"
|
||||
VARIANT=bolt
|
||||
else
|
||||
echo " => Detected Symfony project"
|
||||
echo " => Detected Symfony project"
|
||||
VARIANT=vanilla
|
||||
fi
|
||||
|
||||
@ -41,11 +41,24 @@ case "$VARIANT" in
|
||||
echo " -> Clearing cache..."
|
||||
bin/console cache:clear --env=prod -q
|
||||
;;
|
||||
"bolt")
|
||||
echo " -> Setting up BoltCMS directories..."
|
||||
# we get a warning about this
|
||||
chmod a+rwx /bolt/config
|
||||
# we don't want to get errors from these
|
||||
chmod -R a+rwx /bolt/var
|
||||
chmod -R a+rwx /bolt/var/data
|
||||
chmod -R a+rwx /bolt/var/cache
|
||||
chmod -R a+rwx /bolt/var/cache/prod
|
||||
chmod -R a+rwx /bolt/var/log
|
||||
echo " -> Configuring database..."
|
||||
# TODO: Apply schema and migrations
|
||||
;;
|
||||
esac
|
||||
|
||||
echo " -> Testing environment..."
|
||||
if ! bin/console about -q; then
|
||||
echo " >> Failed"
|
||||
echo " ** Failed **"
|
||||
fi
|
||||
|
||||
exit 0
|
||||
|
@ -4,7 +4,7 @@ if [ ! -f /application/composer.json ]; then
|
||||
exit 1
|
||||
fi
|
||||
|
||||
echo " => Detected composer project."
|
||||
echo " => Detected composer project."
|
||||
echo " -> Installing dependencies using composer..."
|
||||
/usr/bin/composer install --no-dev --no-cache --optimize-autoloader --no-progress -q || exit 0
|
||||
|
||||
|
@ -1,3 +1,3 @@
|
||||
#!/bin/sh
|
||||
|
||||
echo " ** Sorry, no framework detected."
|
||||
echo " ** Sorry, no framework detected **"
|
||||
|
13
templates/bolt.Dockerfile
Normal file
13
templates/bolt.Dockerfile
Normal file
@ -0,0 +1,13 @@
|
||||
#
|
||||
# Dockerfile template for BoltCMS (Symfony) based projects using PHP 8.3
|
||||
#
|
||||
# Magic files (in /application):
|
||||
#
|
||||
# .nginx-site.conf Override nginx site default.conf
|
||||
#
|
||||
|
||||
FROM dev.noccylabs.info/noccylabs/alpine-php83-aio:latest
|
||||
|
||||
COPY . /application
|
||||
|
||||
VOLUME /application/var /application/public/thumbs /application/public/files
|
@ -3,7 +3,7 @@
|
||||
#
|
||||
# Magic files (in /application):
|
||||
#
|
||||
# .nginx-site Override nginx site default.conf
|
||||
# .nginx-site.conf Override nginx site default.conf
|
||||
# .symfony-preinit Called before composer install
|
||||
# .symfony-init Called after compose install
|
||||
#
|
||||
@ -11,3 +11,5 @@
|
||||
FROM dev.noccylabs.info/noccylabs/alpine-php83-aio:latest
|
||||
|
||||
COPY . /application
|
||||
|
||||
VOLUME /application/var
|
Loading…
Reference in New Issue
Block a user