Report this

What is the reason for this report?

App Platform - Internal Service fails Health Check

Posted on January 21, 2023
Zwa

By Zwa

I have an internal service which communicates with the main HTTP Server via AMQP (on an external RabbitMQ instance). It does not intentionally expose any TCP ports or intercept any HTTP requests.

How do I get this to pass the health check on App Platform?

I’ve configured it like so:

  - name: my_internal_service
    dockerfile_path: Dockerfile
    source_dir: /
    github:
      branch: main
      deploy_on_push: true
      repo: <GITHUB>/<REPO>
    instance_count: 1
    instance_size_slug: basic-xxs
    internal_ports:  # won't need this anyway
      - 3000


This textbox defaults to using Markdown to format your answer.

You can type !ref in this text area to quickly search our full set of tutorials, documentation & marketplace offerings and insert the link!

These answers are provided by our Community. If you find them useful, show some love by clicking the heart. If you run into issues leave a comment, or add your own answer to help others.

Hi there,

I could suggest a couple of things here:

  • Rather than deploying your app as a web service, you can deploy it as a Worker. Background workers are the same as HTTP services, except they are not “routable,” i.e. they are not accessible via an external URL:

https://docs.digitalocean.com/products/app-platform/how-to/manage-workers/

  • Create a heath check endpoint within your app that you could use for the health check details:

Hope that this helps!

Best,

Bobby

The developer cloud

Scale up as you grow — whether you're running one virtual machine or ten thousand.

Get started for free

Sign up and get $200 in credit for your first 60 days with DigitalOcean.*

*This promotional offer applies to new accounts only.