Introduced a conditional check in the entrypoint script to only clear caches if the install lock is missing and added logic to create necessary folder structures. Updated Laravel-specific post-installation steps to include extended permission settings. Enhanced the Dockerfile by including the Imagick PHP extension and updated `.dockerignore` to exclude additional storage directories.
This commit introduces a Dockerized environment for the application, including a Dockerfile, docker-compose.yml, and a custom entrypoint script. The setup supports multiple services like MariaDB, Redis, and Elasticsearch, with health checks and environment configurations. It also automates dependency installation, environment setup, and Laravel-specific tasks like caching and installation processes.
I've made various updates to the docker implementation to work with the
latest php7 and currently blocks php8 until we deem nntmux ready. I've
also made modifications that allow for customizations without leaving a
dirty git status i.e. moving redis, etc. to an overrides file that is
gitignored and php customizations i.e. locale to a local overrides file
that is also gitignored.
The new docker implementation utilizes supervisord to run various
services in the web container, i.e. nginx, php-fpm, horizon, etc.
I plan to continue to maintain this as needed. Closes#1152