Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Within the api folder, the file packages/api/src/jobs/index.js defines a Node service that is run separately, as if it were a third package. This service monitors Redis-based work queues to receive and process requests for exports of certification information.

Deployments

Each of the three packages is deployed to the LiteFarm production environment, and to a pre-production environment generally known as “beta” (though it is not used for traditional beta testing).

These deployments share some components.

...

The production environment consists of:

  • litefarmapp, a Digital Ocean Droplet that:

    • runs the webapp package (behind an Nginx reverse proxy) in a Docker container assigned the hostname app.litefarm.org

    • runs the api package in a Docker container assigned the hostname api.app.litefarm.org

    • runs PostgreSQL in a Docker container

    • provides file storage for the database contents and backups

  • litefarm-imaginary, a Digital Ocean Droplet that:

    • provides file storage for ? images

    • runs the “exports package” jobs scheduler Node service

    • runs the Redis-based work queues used by the API server to submit export jobs to the scheduler

    • runs the image manipulation microservice imaginary in a Docker container

    • runs an Nginx web server, hostname image.litefarm.org, that:

      • serves images ….?

      • reverse proxies access to a Docker container running the image manipulation microservice imaginary

  • Digital Ocean Spaces (object storage “buckets”) that provide storage for …

The pre-production environment consists of:

  • liteformbeta, a Droplet that duplicates the services on litefarmapp, with hostnames beta.litefarm.org and api.beta.litefarm.org

  • export-beta, a Droplet that duplicates the services of on litefarm-imaginary, with one exception 🗒

  • Digital Ocean Spaces (object storage “buckets”) that provide storage for …

🗒 All deployments-- production, pre-production, and local development-- use the single instance of the imaginary microservice image.litefarm.org