Running PHP applications on Nodion
Learn more about how to run PHP applications like Laravel on Nodion
Create a new application
To get started you can simply create a new application after signing in. If you simply want to try out our platform you can use one of our starter templates to get up and running quickly.
Deploying with Buildpacks
Buildpacks will automatically detect that you are running a PHP application if you have a
index.php file in the root directory of your application. Please provide the desired PHP version in your composer.json file, the PHP Buildpack will install all dependencies as well as the specified PHP version.
It's necessary to set a
PORT Environment Variable within your application settings. If this is not set, our load balancing system is not able to redirect to your application and an error will occur.
If you need to run certain tasks when deploying you can use the release stage of the Procfile. The command provided there will be run right before spawning the new containers of that deployment.
Depending on the selected Buildpack Builder this command might look different, if you are using the Heroku Builder you can use something like this:
web: php -S 0.0.0.0:$PORT -t public release: php artisan migrateProcfile
Running Laravel Queues
Laravel Queues are an easy way to handle background processing tasks. With Nodion you can simply provide a worker start command with the
worker type to run Laravel Queues. For example:
web: php -S 0.0.0.0:$PORT -t public worker: php artisan queue:work release: php artisan migrateProcfile
Laravel Queues require Redis to work. You can use our Managed Redis service to launch Redis instances.
We support multiple Buildpack Builders, depending on which Builder you chose there are different packages pre-installed. You can use additional Buildpacks, like the FFmpeg Buildpack to install a specific package. In general, all Builders that are supported by Nodion are based on Ubuntu. That means you can also install any package by adding a Buildpack called apt and creating an
Aptfile to provide a list of packages.