Lily deployment: docker compose
Lily can be easily dockerized and ran inside docker, which is particularly useful for testing deployments.
Lily also includes a
docker-compose that can be used to get familiar with
Lily operation and how it integrates with supporting services.
Lily docker images can be produced for multiple networks via
make by passing
one of the following targets as an argument:
Prebuilt images are also available at Docker Hub: https://hub.docker.com/r/filecoin/lily/tags.
The docker image tagging convention is:
<version>follows semantic versioning (
-<network-name>can either be omitted for Main network or use
-calibnetfor Calibration network (Note: Currently only Main and Calibration networks have prebuilt Lily images),
- and an optional
-devprovides the container which has golang toolchain, debugging tools and a shell included for debugging and troubleshooting within the container.
Docker Compose and additional Docker services
Lily comes with a
docker-compose.yml template that provides support for
conveniently launching supporting services:
- timescaledb - database
- prometheus - metrics
- grafana - dashboards
- jaeger - tracing
You can start/stop these services with:
docker-compose up -d docker-compose down
For more information about Docker Compose see the official documentation.
The services run on the following defaults:
Postgres (w/ TimescaleDB)
If you want to separately run Lily in docker you will need to configure it to use the network overlay created by docker compose and make sure that it is configured to point to the endpoints used by the supporting services.