Skip to main content

Docker

Install Docker Compose

Use the following commands to install Docker Compose on Ubuntu:

apt update
apt install docker-compose-v2

Deploy Coroot

To deploy Coroot using Docker Compose, run the following command. Before applying it, you can review the configuration file in Coroot's GitHub repository: docker-compose.yaml

curl -fsS https://raw.githubusercontent.com/coroot/coroot/main/deploy/docker-compose.yaml | \
docker compose -f - up -d

ClickHouse system tables

ClickHouse stores system log tables on the file system by default. As Coroot consults ClickHouse heavily, this will consume a lot of disk space. It is recommended to disable the system logs by mounting an xml override config into your clickhouse container.

This can be achieved by creating an xml file clickhouse-disable-system-logs.xml and mounting it in the ClickHouse container.

<?xml version="1.0"?>
<clickhouse>
<asynchronous_metric_log remove="1"/>
<metric_log remove="1"/>
<query_log remove="1" />
<query_thread_log remove="1" />
<query_views_log remove="1" />
<part_log remove="1"/>
<text_log remove="1" />
<trace_log remove="1"/>
<opentelemetry_span_log remove="1"/>
<processors_profile_log remove="1"/>
</clickhouse>

Then, modify the docker compose by mounting the file into the ClickHouse container.

    volumes:
- ./clickhouse-disable-system-logs.xml:/etc/clickhouse-server/config.d/disable-system-logs.xml

Validate the deployment

Ensure that the Coroot containers are running by executing the following command:

docker ps

You should see an output similar to this if the deployment is successful:

CONTAINER ID   IMAGE                                 COMMAND                  CREATED         STATUS         PORTS                                                 NAMES
b018f1cf6e09 ghcr.io/coroot/coroot-cluster-agent "coroot-cluster-agen…" 5 seconds ago Up 3 seconds coroot-cluster-agent-1
10b4bc2eef63 ghcr.io/coroot/coroot "/opt/coroot/coroot …" 5 seconds ago Up 3 seconds 0.0.0.0:8080->8080/tcp, :::8080->8080/tcp coroot-coroot-1
d0143aea889b clickhouse/clickhouse-server:24.3 "/entrypoint.sh" 5 seconds ago Up 4 seconds 8123/tcp, 9009/tcp, 127.0.0.1:9000->9000/tcp coroot-clickhouse-1
4cbae2f36c1c ghcr.io/coroot/coroot-node-agent "coroot-node-agent -…" 5 seconds ago Up 4 seconds coroot-node-agent-1
a6618978d560 prom/prometheus:v2.45.4 "/bin/prometheus --c…" 5 seconds ago Up 4 seconds 127.0.0.1:9090->9090/tcp coroot-prometheus-1

Accessing Coroot

If you installed Coroot on your desktop machine, you can access it at http://localhost:8080/. If Coroot is deployed on a remote node, replace NODE_IP_ADDRESS with the IP address of the node in the following URL: http://NODE_IP_ADDRESS:8080/.

Uninstall Coroot

To uninstall Coroot run the following command:

curl -fsS https://raw.githubusercontent.com/coroot/coroot/main/deploy/docker-compose.yaml | \
docker compose rm -f -s -v
Looking for 24/7 support from the Coroot team? Subscribe to Coroot Enterprise:Start free trial