When deploying an application, if there is an issue with deployment, you may see one of the following errors:
Something went wrong, please contact support.
Build process failed
Unknown build fail type
If the rollout process fails immediately, or if the build process fails, no pods are created, and runtime logs do not exist, an incorrect start command in the web process is most often the cause (or an incorrect
ENTRYPOINT in the Dockerfile if your application is built from a Dockerfile).
If the rollout process runs for a minute or two and then fails, this usually means the pods were created, but something went wrong, and the process stopped. In this case, you should check the application runtime logs to identify any error messages. The error messages can help you to identify bugs in the application’s code so you can debug the issue.
If you cannot identify the issue, check the following, and if the issue persists, contact our Support team.
Check your repository to ensure all the correct files have been pushed into the repository for your application.
If you choose Set up container image automatically when you add your application, we use a buildpack to automatically determine and set up a container for your application. When using buildpacks, you must ensure the correct language version is in your application’s files. For more details, see our documentation on specifying a language version.
Start Command or ENTRYPOINT
The Start command for the web process starts your application. If this is incorrect, the application will not run. You can check the command in a couple of places in MyKinsta:
- Processes > Runtime processes > Web process.
- Or Deployments > History, select a deployment to view the details, then click Rollout process under Deployment progress.
If your application uses a Dockerfile to set up your container image, you must specify the
ENTRYPOINT in the Dockerfile to run a container. For more information about how to specify your application’s
ENTRYPOINT, see the Dockerfile reference.
For more details about what command to use based on your application’s language, see the examples provided in our Application Start Command documentation.
Build Path or Dockerfile Context
When you add your application, you choose to either set up the container image automatically with a buildpack or use a Dockerfile to set up the container image.
- Build path: This only applies to buildpacks. This is the path in the repository to the files required to build the application. Most applications are built from the repository root, and the Build path defaults to this (.). If you have a different build path, specify it here. For example, if your application needs to be built from a subdirectory (e.g. app), enter that subdirectory path in the Build path field: app. This is also useful if you have a monorepo.
- Context: This only applies to Dockerfiles. This is the path in the repository we need access to so we can build your application. Most applications are built from the repository root, and you can enter the repository root (.) in the Context field. If your application needs to be built from a subdirectory (e.g. app), enter that subdirectory path in the Context field: app.
You can view and change the Build path or Dockerfile Context in your application’s Settings.
Environment variables feed your application information from outside of the running of that application. An incorrect environment variable may prevent your application from running. You can check your environment variables in Settings > Environment variables.
Confirm that the correct environment variables exist and contain valid values. There are a couple of important things to keep in mind when creating and checking environment variables:
- Commas are interpreted as delimiters by the rollout process, so they cannot be used in environment variables.
- Each key must be unique, and a key can only be added once.
- Unescaped double quotes are either disregarded or will cause the rollout process to fail
For Application Hosting, only ports 80 and 443 are open. If your application exposes any ports, you must use 8080.