1. 安装Docker
确保您的机器上已经安装了Docker。如果尚未安装,请参阅Docker官网提供的相应操作系统教程进行安装。
2. 拉取ClickHouse镜像
从Docker Hub获取官方或社区维护的ClickHouse镜像。
docker pull yandex/clickhouse-server:latest
这里的 latest
表示最新的稳定版,您也可以指定具体的版本号。
3. 创建数据卷持久化数据
为了避免容器重启时数据丢失,通常会映射宿主机的一个目录作为ClickHouse的数据存储位置。
下面的路径替换为自己真实的存放路径即可
mkdir -p /path/to/clickhouse/data
mkdir -p /path/to/clickhouse/config
mkdir -p /path/to/clickhouse/logs
4. 运行ClickHouse容器
使用以下命令启动ClickHouse容器,同时映射端口和挂载数据卷:
docker run -d \
--name clickhouse-server \
-p 8123:8123 \
-p 9000:9000 \
-v /path/to/clickhouse/data:/var/lib/clickhouse/ \
-v /path/to/clickhouse/config:/etc/clickhouse-server/ \
-v /path/to/clickhouse/logs:/var/log/clickhouse-server/ \
--ulimit nofile=262144:262144 \
yandex/clickhouse-server:latest
这里的 -d
参数表示后台运行容器,-p
参数用于映射端口,-v
参数用于挂载数据卷,--ulimit
参数设置打开文件数限制。
使用Docker Compose安装步骤如下:
- 安装Docker和Docker Compose。
- 编写
docker-compose.yml
配置文件,指定ClickHouse镜像和服务配置。 - 运行
docker-compose up
启动ClickHouse服务。
version: '3'
services:
clickhouse:
image: yandex/clickhouse-server:latest
# 可以指定特定版本,如 '21.3.20.1'
hostname: clickhouse
container_name: clickhouse
expose:
- "9000"
ports:
- "8123:8123"
- "9000:9000"
volumes:
- /home/clickhouse/data/:/var/lib/clickhouse/
- /home/clickhouse/log/:/var/log/clickhouse-server/
- /home/clickhouse/etc/clickhouse-server/:/etc/clickhouse-server/
environment:
- TZ=Asia/Shanghai
ulimits:
nofile:
soft: 262144
hard: 262144
5. 配置ClickHouse(可选)
若需要对ClickHouse进行自定义配置,可以编辑宿主机上的配置文件,然后它们会被容器内的ClickHouse服务器加载。
6. 检查ClickHouse是否运行正常
可以通过浏览器访问Web控制台(如果启用了http接口)或者通过命令行客户端连接到ClickHouse服务器。
docker exec -it clickhouse-server clickhouse-client
基本使用
进入ClickHouse客户端后,可以开始执行基本操作:
- 创建数据库:
1CREATE DATABASE mydatabase;
- 切换到已创建的数据库:
1USE mydatabase;
- 创建表:
1CREATE TABLE example_table (
2 id Int32,
3 name String,
4 timestamp DateTime
5) ENGINE = MergeTree()
6ORDER BY (id, timestamp);
- 插入数据:
1INSERT INTO example_table (id, name, timestamp) VALUES (1, 'example', now());
- 执行查询:
1SELECT * FROM example_table;
至此,您已经在Docker中成功安装并初步使用了ClickHouse。记得根据实际需求调整配置文件和容器运行参数以满足生产环境的需求。