一、下载并安装Docker

Docker是一种轻量级的虚拟机,且在官网有镜像,通过安装指定软件的镜像,就可以将该软件的所有依赖一次性安装到虚拟机环境中,省去了我们自己安装虚拟机环境、相关依赖的麻烦。

Docker官网:https://www.docker.com/

设置国内镜像,在设置的Docker Engine选项中加入以下内容

"registry-mirrors": [
  "https://6kx4zyno.mirror.aliyuncs.com"
]

在这里插入图片描述

二、设置Clickhouse宿主机挂载目录

我这里设置了~/Devlopment/DockerSoft/clickhouse-server1作为Clickhouse程序在Linux运行下虚拟机中/var/lib/clickhouse的挂载目录,设置这个东西的主要目的是为了文件同步。修改了宿主机中该文件夹下的文件,虚拟机中的文件也会同时被修改,反之亦然,文件同步有两个好处:

  • 方便我们修改在宿主机中修改配置文件
  • 虚拟机中数据存储到宿主机中不会因该Docker容器被删除而丢失

三、运行包含Clickhouse的Docker容器

这里的altinity/clickhouse-server:21.12.3.32.altinitydev.arm镜像包是给Apple M1芯片的电脑使用,
Intel CPU使用yandex/clickhouse-server即可

#M1芯片电脑:
docker run -d \ 
--name clickhouse-server1 \
--ulimit nofile=262144:262144 \
-v ~/Devlopment/DockerSoft/clickhouse-server1:/var/lib/clickhouse \
-p 9000:9000 -p 8123:8123 -p 9009:9009 \
altinity/clickhouse-server:21.12.3.32.altinitydev.arm

#Intel芯片电脑:
docker run -d \ 
--name clickhouse-server1 \
--ulimit nofile=262144:262144 \
-v ~/Devlopment/DockerSoft/clickhouse-server1:/var/lib/clickhouse \
-p 9000:9000 -p 8123:8123 -p 9009:9009 \
yandex/clickhouse-server

连接后,可以使用以下命令在虚拟机内部访问Clickhouse

docker exec -it clickhouse-server1 /bin/bash
clickhouse-client -d -h 127.0.01

附一些clickhouse-client参数

clickhouse-client
    --host, -h     	:服务端host名称,默认 localhost
    --port         	:连接端口,默认9000
    --user, -u     	:用户名,默认 default
    --password     	:密码,默认空
    --query, -q    	:非交互模式下的查询语句
    --database, -d 	:默认当前操作的数据库,默认default
    --multiline, -m :允许多行语句查询,在clickhouse中默认回车即为sql结束,可使用该参数多行输入
    --format, -f		:使用指定的默认格式输出结果      csv,以逗号分隔
    --time, -t			:非交互模式下会打印查询执行的时间
    --stacktrace		:出现异常会打印堆栈跟踪信息
    --config-file		:配置文件名称

四、数据库连接Clickhouse

本文没对Clickhouse的数据库参数进行修改,均为数据库默认设置

默认用户名:Default
密码:空
暴露端口:8123
URL:jdbc:clickhouse://localhost

在这里插入图片描述

Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐