Understanding application, service, and deployment statuses

5 min read Updated 1 week ago

Understanding application, service, and deployment statuses

This guide explains what each status means for your applications, services, and deployments in Ploi Cloud, and provides guidance on what to do when you encounter each status.

Application statuses

Applications can have the following statuses:

Starting (yellow indicator)

What it means: Your application is initializing. The containers are being created and started, but they're not ready to serve traffic yet.

What to do: Wait a few moments for the application to fully start. This is normal during the initial deployment or after a restart. If it stays in this state for more than 5 minutes, check the deployment logs for any startup errors.

Active (green indicator)

What it means: Your application is running successfully and ready to serve traffic. All containers are healthy and responding to health checks.

What to do: No action needed - your application is working as expected.

Deploying (blue indicator)

What it means: A new version of your application is being built and deployed. The build process is creating a new container image from your source code.

What to do: Wait for the deployment to complete. You can monitor progress in the deployment logs. This process typically takes a few minutes depending on your application size. If the status stays blue after several minutes it means the new version cannot be started. Check the debug page to see the startup error and solve it.

Stopping (orange indicator)

What it means: Your application is being shut down gracefully. It's no longer accepting new requests and existing connections are being closed.

What to do: Wait for the process to complete if you initiated a stop. If unexpected, check if someone else on your team triggered this action.

Stopped (gray indicator)

What it means: Your application is not running. No containers are active and the application is not accessible.

What to do: If you want your application to be running, click the "Start" button to restart it. If intentionally stopped, no action is needed.

Failed (red indicator)

What it means: Your application encountered an error and couldn't start or crashed while running. This could be due to configuration issues, missing environment variables, or code errors.

What to do:

  • Check the deployment logs for error messages

  • Review recent code changes that might have caused the issue

  • Verify all required environment variables are set

  • Check if your application has sufficient memory allocation

  • Try redeploying after fixing any identified issues

Destroying (red indicator)

What it means: Your application is being permanently removed. All resources, data, and configurations are being deleted.

What to do: Wait for the process to complete. This action cannot be undone, so ensure you have backups if needed.

Service statuses

Services (databases, cache, queue systems, etc.) use the same status indicators as applications:

Service-specific considerations

Database services (MySQL, PostgreSQL, MongoDB):

  • Starting: Database is initializing. Initial startup may take longer as it creates system tables

  • Active: Database is ready for connections

  • Failed: Check logs for disk space, memory issues, or configuration errors

Cache services (Redis, Valkey):

  • Starting: Cache is loading data into memory

  • Active: Cache is ready for connections

  • Failed: Usually memory-related issues

Worker services:

  • Starting: Worker process is initializing

  • Active: Worker is processing jobs

  • Failed: Check the worker command and logs for errors

Deployment statuses

Each deployment goes through these stages:

Pending (gray indicator)

What it means: Your deployment is queued and waiting to start. The system is preparing resources for the build process.

What to do: Wait a moment. Deployments typically start within seconds.

Running (blue indicator with animation)

What it means: Your deployment is actively building your application. The system is pulling your code, building the container image, and preparing to deploy.

What to do: Monitor the deployment logs to see real-time progress. Build time varies based on your application size and dependencies.

Successful (green indicator)

What it means: Your deployment completed successfully. The new version of your application is now running.

What to do: Verify your application is working as expected. Test any new features or changes you deployed.

Failed (red indicator)

What it means: The deployment encountered an error and couldn't complete. This could be due to build errors, test failures, or deployment configuration issues.

What to do:

  • Check the deployment logs for specific error messages

  • Common issues include:

    • Build errors: Fix code syntax errors or missing dependencies

    • Image size too large: Optimize your build process

    • Registry authentication issues: Contact support

    • Resource limits: Your application may need more memory

  • Fix the identified issues and trigger a new deployment

Cancelled (orange indicator)

What it means: The deployment was stopped before completion, either manually or due to a newer deployment being triggered.

What to do: If you cancelled it intentionally, trigger a new deployment when ready. If unexpected, check if another team member started a newer deployment.

Common error messages and solutions

Container termination reasons

OOMKilled (out of memory killed):

Your application used more memory than allocated.

Solution: Increase the memory limit for your application or optimize your code to use less memory.

Error (exit code 1):

Your application encountered a general error during startup or runtime.

Solution: Check application logs for specific error messages. Common causes include missing files, incorrect permissions, or unhandled exceptions.

Exit code 137 (SIGKILL):

Your application was forcefully terminated, often due to memory issues.

Solution: Similar to OOMKilled - increase memory allocation or optimize memory usage.

Exit code 143 (SIGTERM):

Your application received a termination signal.

Solution: This is usually normal during deployments or scaling. Ensure your application handles graceful shutdowns properly.

Best practices

  • Regularly monitor your application status after deployments

  • Set up appropriate health checks to detect issues early

  • Keep deployment logs for troubleshooting

  • Test your application locally before deploying

  • Use environment-specific configurations to avoid deployment issues

  • Set appropriate resource limits based on your application's needs

Getting help

If you continue to experience issues after following this guide:

  • Check the deployment and application logs for detailed error messages

  • Review recent code changes that might have introduced issues

  • Verify all environment variables and secrets are properly configured

  • Contact your team administrator or support for assistance