Each service on this full list of services included in the repository has a designated README.md with more information about its purpose:
- adapter-registry
- data-manager
- endpoint-registry
- endpoint-resolver
- grpc-endpoint-egress
- grpc-endpoint-ingress
- https-endpoint-egress
- https-endpoint-ingress
- initializer
- onboarding-skill
- storage-adapter-mongodb
The following shows the services in a TAM block diagram.
Service configuration is handled via environment variables. In each service's environment:
section in docker-compose.yml is a full list of environment variables used, some of which can be configured via the .env file in the repository root.
Local changes affecting a single service require building that service locally. To avoid having to build all images one can leverage a corresponding pattern rule specified in the Makefile:
## arbitrary <SERVICE>
make build-<SERVICE>
## e.g. endpoint-resolver
make build-endpoint-resolver
Alternatively, docker-compose
can be used:
## arbitrary <SERVICE>
docker-compose -f docker-compose.dev.yml build i40-aas-<SERVICE>
## e.g. endpoint-resolver
docker-compose -f docker-compose.dev.yml build i40-aas-endpoint-resolver
- For instructions on testing the running service look here
- For a detailed explanation of the ingress/egress message flow within i40-aas look here
- For instructions on how to join your own skills/additional services to a running docker-compose setup look here
A: Both work. If you have the option to do so, leverage the Helm chart to deploy i40-aas to Kubernetes as it allows for easier configuration, maintenance and allows to leverage monitoring/logging capabilities cloud providers.