When ServiceControl is hosted in containers, the particular/
image provides the database storage to the Error and Audit instances.
The database container extends the official RavenDB container and is provided to easy version parity with ServiceControl instances. In other words, for any version x.
version of ServiceControl, the same version x.
of the database container should be used to ensure data storage compatibility.
A single database container should not be shared between multiple ServiceControl instances in production scenarios.
Basic usage
This minimal example creates a database container using docker run
:
docker run -d --name servicecontrol-db \
-v <DATA_DIRECTORY>:/opt/RavenDB/Server/RavenData \
particular/servicecontrol-ravendb:latest
Once the database container is running, the connection string http:/
can be used for the RAVENDB_CONNECTIONSTRING
value for an Error instance or Audit instance.
Required settings
A volume must be mounted to /
to provide persistent storage for database contents between container updates. Failure to specify a path for the volume will result in loss of all data when the container is removed.
Additional settings
As the ServiceControl RavenDB container extends the official RavenDB container, additional configuration details can be found in the RavenDB Docker container documentation, according to this version map:
ServiceControl Versions | RavenDB Version | Container Documentation |
---|---|---|
5.4 and higher | 5.4 | RavenDB 5.4 container docs |
The RavenDB container overview on DockerHub is specific to the most recent version of RavenDB which may not match the version used by ServiceControl.