Nitric Docker Providers
Nitric Providers can be distributed as Docker containers. This allows providers to be built and distributed independently of the Nitric runtime in a highly portable format. It's also a convenient way to distribute custom providers.
Enabling Docker Providers
Nitric Providers running as Docker containers are currently a preview feature. To enable this feature, add/update the preview feature flag in your nitric.yaml
file:
preview:
- docker-providers
Using Docker Providers
To use a Docker Provider, you need to specify the image to use in a stack file for your project, e.g. nitric.test.yaml
. While a standard Nitric Provider is defined as string containing the provider namespace, then provider name and version e.g. nitric/aws@1.2.0
, docker providers start with docker://
followed by the image name you'd like to reference (repositories and tags are supported).
For example, to use a custom provider in a container image named my-provider
, update the stack file as follows:
provider: docker://my-provider
The docker://
prefix is required to indicate that the provider is a Docker
container image.
If the given image is found locally it will be used without pulling from a registry. Otherwise, the image will be pulled from the default registry.
Tags are also supported and recommended to ensure the correct version of the provider is used. For example, to use a custom provider in a container image named my-provider
with the tag latest
, update the stack file as follows :
provider: docker://my-provider:latest