ClickHouse

Coolify deploys ClickHouse as a standalone analytical database on the selected server and destination. A new resource gets a generated administrator password, a persistent volume at /var/lib/clickhouse, an internal connection URL, and a health check.

ClickHouse is a column-oriented database for analytical queries and online analytical processing (OLAP).

Create a ClickHouse database

Open New Resource

Open the project and environment where the database should live, then select New Resource.

Select ClickHouse

Under Databases, select ClickHouse. You can also search for ClickHouse by name.

Select a server

Select the server that should run ClickHouse. Build servers cannot be selected because they do not host running database resources.

Select a destination

Select the Docker network destination that ClickHouse should join.

Review the generated configuration

Coolify creates the resource and opens Configuration > General. Review the image, administrator username, generated password, native port, and connection URL. Keep the default private networking unless an external client requires access.

Start ClickHouse

Select Start and follow the startup output. Wait until ClickHouse is running and healthy, then copy the Internal URL into clients on the same destination network.

Default configuration

SettingDefault or behavior
Native internal port9000
Default imageclickhouse/clickhouse-server:25.11
HTTP interface8123 inside the container
Administrator usernamedefault
Databasedefault when no other database is configured
Data mount/var/lib/clickhouse
Scheduled backupsSupported
SSLNot available in the standalone database interface

Coolify's generated Internal URL uses the native protocol and port 9000:

clickhouse://<username>:<password>@<database-container>:9000/<database>

If an HTTP client or GUI needs the HTTP interface, map the container's 8123 port with Ports Mappings. When Make it publicly available is enabled, use the generated Public URL for the native protocol; configure an HTTP mapping separately when the client requires HTTP.

For example, map 8123:8123 and connect an HTTP client to http://<server-ip>:8123 with the ClickHouse administrator username and password. Map 9000:9000 when a client uses the native TCP protocol, such as clickhouse-client.

Configure ClickHouse

Open Configuration > General to change the image, administrator credentials, Ports Mappings, public proxy, and supported custom Docker options. The current standalone ClickHouse form does not expose a database-name field; the generated URL uses the resource's configured database value, which defaults to default. Coolify creates a persistent volume at /var/lib/clickhouse when it creates the resource.

ClickHouse does not expose a custom configuration editor or SSL selector in the standalone database interface. Use a Docker Compose deployment when you need to manage a custom ClickHouse topology or configuration files directly.

Back up and restore ClickHouse

Coolify supports scheduled ClickHouse backups. Configure a schedule under Backups, enter one or more comma-separated database names, and configure local or S3 retention. Coolify creates a ClickHouse backup archive and removes expired copies according to the schedule's retention rules.

Use the database's Terminal or an approved ClickHouse client to verify the restored tables. Coolify's built-in Import Backup workflow does not support ClickHouse.

Verify ClickHouse backups separately

The backup archive is created through ClickHouse's backup workflow. Test an archive against a disposable ClickHouse resource before relying on it for recovery.

Health checks

Coolify's default health check runs clickhouse-client inside the container and executes a simple query. Configure the interval, timeout, retries, and start period under Configuration > Healthcheck, then restart ClickHouse after saving.

Official ClickHouse resources

On this page