Examples:
Ensure the following:
- Docker image includes a HEALTHCHECK for the docker-test.yaml workflow. Ensure that health check parameters are adequate for your services.
- You can set
DISABLE_HEALTHCHECK=true
in actions environment in your repository to disable Healthcheck test in the workflow
References:
- Best practices for Dockerfile instructions: https://docs.docker.com/develop/develop-images/instructions/
- For examples in other languages, you can explore docker/awesome-compose.
- Dockerfile reference: https://docs.docker.com/reference/dockerfile/
Example: /examples/workflows/build-and-push.yaml
Important
In case you see 403 error, checkout this
Reference:
- For further clarification and detailed instructions, you can refer to the GitHub documentation.
Example: /examples/workflows/docker-test.yaml
Example: demo_service
Raise a PR with the following changes
- docker-compose.yaml updated with your required services
- Ensure each
service
has a name insnake_case
- Ensure to add a restart policy to your services so that it restarts on exit
- Refrain exposing any ports in compose file (see caddy section below)
- Add environment variables to sample.env and format the mandatory variables as
${VAR:?error}
in the compose file. - You must configure an image tag, memory, cpu limit and replicas for your service. Refer to above example for the standard format.
- Ensure each
-
For services you want to expose to the public, add the below block for each service to the caddy/Caddyfile.
{$DOMAIN_SCHEME}://<service-name>.{$DOMAIN_NAME} { reverse_proxy <service-name-in-docker-compose>:<service-port> }