Supported languages
We support the following application languages for Buildpacks:- Node.js
- Ruby
- Python
- Java
- Scala
- PHP
- Go
Configure Buildpacks
Some applications require no configuration, but some require specialized commands and options to run, such as: Environment variables ā You may need to set certain environment variables to run your application. Processes ā Sevalla can automatically detect your web process command. You can change this if required, and you can define additional processes. Processes in a Procfile ā You may want to define your processes in a Procfile within your applicationās code.Add or edit Buildpacks
You can manage buildpacks on your applicationās Settings page. You can add additional build packs within Build strategy > Update build strategy > Add buildpack. When you add a buildpack, itās automatically added to the end of the buildpacks list, so you may need to edit the order of your buildpacks. You can drag and drop the buildpacks to change their order, or remove buildpacks within Build strategy > Update build strategy.Buildpack binary directories
With buildpacks, the binary directories may differ from the default binary directories for the application language. The following table shows the binary directories used for each buildpack language:Set a Buildpackās language version
When you select the option to use Buildpacks, if you do not specify a version in your applicationās code, the Buildpack will use the latest available version. If you want to use a different language version for your application, youāll need to set the version in your applicationās files. The method for setting the version varies by language. Below weāve included examples for currently supported languages.Go
To specify your Go version, include the following in your applicationās go.mod file:Java
To specify your Java version, include the following in your applicationās system.properties file:Node.js
To specify your Node.js and npm versions, include the following in your applicationās package.json file:Specifying the npm version isnāt usually necessary (npm is bundled with Node.js). Setting the npm version is only needed when you want to use a different version than the one bundled with your version of Node.js
React
If youāre using React and want to specify your React version, replace or add the React version in thedependencies section of your package.json file:
PHP
Buildpacks support the currently supported PHP versions; once a PHP version reaches end-of-life, it is no longer supported but remains available so you can upgrade your application to a newer version.
PHP.ini
You can change PHP.ini settings using a.user.ini file in the same directory as the .php file.Ā For more information about which settings you can control, refer to the PHP manual.
A small set ofĀ PHP.iniĀ configuration directives cannot be modified usingĀ .user.ini; for example, PHP_INI_SYSTEM. In this case, you must pass additional configuration settings for PHP at startup time using a custom configuration file fpm_custom.conf with theĀ php_valueĀ andĀ php_flagĀ directives.
If you use a custom configuration file, you must tell your application to start with this configuration by adding -F to the start command. You can also use this configuration file to modify the PHP-FPM behavior.