Skip to content

Service Integration using OpenAgriBootstrap Deployment #2

@fedjo

Description

@fedjo

This issue will serve as a guide to integrate each service with the Gatekeeper using the bootstrap app.

The steps will be needed for each of the services to be integrated

  • The docker image of each service must be uploaded and made public to OpenAgri Docker Registry. An example of pushing a docker image to GH registry can be found her. The idea is to tag the image with a name similar to ghcr.io/openagri-eu/<service-name>:latest and push it to registry.
docker tag pyweather-srv ghcr.io/openagri-eu/pyweather-srv:latest
docker push ghcr.io/openagri-eu/pyweather-srv:latest

Note: Please validate for Packages page that the image is public

  • Create a YAML file (similar to docker-compose.yml of the service) and place it in the available_services directory. An example YAML file is here

Note: The YAML file must receive as environment variables JWT_SIGNING_KEY, ALLOWED_HOSTS and APP_PORT

Disclaimer:

JWT_SIGNING_KEY: Is the key needed for each service to validate(decrypt) the jwt token received from incoming requests from Gatekeeper. 

ALLOWED_HOSTS: Refers to a middleware implementation to only allow gatekeeper as a host, but for demo purposes we must allow all hosts to have direct access to each service

APP_PORT: Is the port where the application runs

INTERNAL_HOST_NAME: refers to the container name, used for internal DNS resolution, usually the same as the service name in the docker compose yml file. (i.e., farmcalendar, weathersrv, etc..)

@arruda @pranavnbapat @vlf-stefan-drobic
Please double check the process we discussed and give feedback

Metadata

Metadata

Assignees

No one assigned

    Labels

    documentationImprovements or additions to documentation

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions