DEV Community

Titronium
Titronium

Posted on

ClickHouse Server in 1 minute with Docker

ClickHouse is an open-source column-oriented DBMS (developed by Yandex). ClickHouse works 100-1000x faster than traditional approaches. It's good for Big Data, business analytics and time series data. ClickHouse is the first open source SQL data warehouse to match the performance, maturity, and scalability of proprietary databases like Sybase IQ, Vertica, and Snowflake.

In this little tutorial, I will show you how to install ClickHouse with minimal settings.

For this tutorial, we will need Docker and docker-compose to be installed.

First, you need to create a directory in which to create the necessary files and directories.

cd /home/username mkdir my-clickhouse cd my-clickhouse 
Enter fullscreen mode Exit fullscreen mode

Then you need to create a directory in which ClickHouse data will be stored.

 mkdir db 
Enter fullscreen mode Exit fullscreen mode

The final step is to create the docker-compose.yml file.

 version: '3' services: ch_server: image: yandex/clickhouse-server ports: - "8123:8123" volumes: - ./db:/var/lib/clickhouse networks: - ch_ntw ch_client: image: yandex/clickhouse-client entrypoint: - /bin/sleep command: - infinity networks: - ch_ntw networks: ch_ntw: driver: bridge ipam: config: - subnet: 10.222.1.0/24 
Enter fullscreen mode Exit fullscreen mode

Let's check what we did. One file (docker-compose.yml) and one directory (db).

 ls -la drwxr-xr-x 3 user user 4096 Mar 4 07:44 . drwxr-xr-x 4 user user 4096 Mar 4 07:43 .. drwxr-xr-x 3 user user 4096 Mar 4 07:45 db -rw-r--r-- 1 user user 435 Mar 4 07:46 docker-compose.yml 
Enter fullscreen mode Exit fullscreen mode

That's it!

Now let's start our Clickhouse Server. The ClickHouse image will download itself and the process will start.

 sudo docker-compose up -d 
Enter fullscreen mode Exit fullscreen mode

Now let's open the command line.

 sudo docker-compose exec ch_server clickhouse-client 
Enter fullscreen mode Exit fullscreen mode

We should see the result of running ClickHouse.

 ClickHouse client version 21.2.5.5 (official build). Connecting to localhost:9000 as user default. Connected to ClickHouse server version 21.2.5 revision 54447. 5175e561dffd :) 
Enter fullscreen mode Exit fullscreen mode

Congratulations, ClickHouse is installed successfully.

This is a very simple guide to playing with ClickHouse DB. I will probably write a more serious guide on how to configure ClickHouse later.

Original post: https://twiwoo.com/docker/clickhouse-server-in-1-minute-with-docker/

Top comments (2)

Collapse
 
marufalom profile image
Maruf Alom

Thanks, I've some other questions.
What GUI tool you use for navigating the database locally?

Collapse
 
vxxvvxxv profile image
Vladimir Sokolovskiy

I'm using products of JetBrains (Goland,PyCharm, DataGrid etc.). It's perfect instrument for management all my DBs.