Nginx & PHP 7 web server with Supervisor and Laravel Horizon.
Using the Laravel installer you can get up and running with a Laravel application inside Docker in minutes.
- Create a new Laravel application
$ laravel new testapp - Change to the applications directory
$ cd testapp - Install Laravel Horizon
$ composer require laravel/horizon - Publish horizon assets
$ php artisan horizon:install - Create failed_jobs table
$ php artisan queue:failed-table - Then Migrate
$ php artisan migrate - Visit the laravel website to check another laravel horizon configurations: https://laravel.com/docs/5.7/horizon#installation
Here are some args
NGINX_HTTP_PORT- HTTP port. Default:80.NGINX_HTTPS_PORT- HTTPS port. Default:443.REDIS_PORT- Redis port. Default:6379.COMPOSER_HASH- Composer hash. Default:544e09ee996cdf60ece3804abc52599c22b1f40f4323403c44d44fdfdd586475ca9813a858088ffbc1f233e9b180f061.PHP_VERSION- The PHP version to install. Supports:7.2. Default:7.2.ALPINE_VERSION- The Alpine version. Supports:3.7. Default:3.7.
Here are some configurable environment values.
WEBROOT– Path to the web root. Default:/var/wwwWEBROOT_PUBLIC– Path to the web root. Default:/var/www/publicCOMPOSER_DIRECTORY- Path to thecomposer.jsoncontaining directory. Default:/var/www.COMPOSER_UPDATE_ON_BUILD- Shouldcomposer updaterun on build. Default:0.LARAVEL_APP- Is this a Laravel application. Default0.RUN_LARAVEL_SCHEDULER- Should the Laravel scheduler command run. Only works ifLARAVEL_APPis1. Default:0.RUN_LARAVEL_MIGRATIONS_ON_BUILD- Should the migrate command run during build. Only works ifLARAVEL_APPis1. Default:0.PRODUCTION– Is this a production environment. Default:0PHP_MEMORY_LIMIT- PHP memory limit. Default:128MPHP_POST_MAX_SIZE- Maximum POST size. Default:50MPHP_UPLOAD_MAX_FILESIZE- Maximum file upload file. Default:10M.