最近在给客户部署Webfunny前端监控和埋点系统的时候,经常会遇到客户要求完全离线安装,所以我将整个离线安装的教程整理下来,这里将介绍如何离线安装Clickhouse数据库。
操作系统:CentOs、Ubantu
要求:机器上已经安装了docker程序
前边有文章已经介绍了如何离线安装docker系统,所以这里的Clickhouse安装也是基于docker来安装和运行的。
一、获取指定版本的Clickhouse镜像
本地拉取镜像:docker pull clickhouse/clickhouse-server:24.3.2.23
二、将镜像打包为tar文件,然后上传
执行打包:docker save -o clickhouse-server24.3.2.23.tar clickhouse/clickhouse-server:24.3.2.23
将打包后的文件上传到离线服务器上
三、离线服务器加载镜像文件
执行加载:docker load clickhouse-server24.3.2.23.tar
, 加载完成后,就可以看到镜像文件了
四、创建挂载目录
执行:mkdir
-p /data/docker/clickhouse
五、获取Clickhouse配置文件,做映射
运行一个临时的容器:docker run --rm -d --name=temp-clickhouse-server clickhouse/clickhouse-server:24.3.2.23
创建配置文件存放目录:mkdir -p /data/docker/clickhouse/config
复制文件1:docker cp temp-clickhouse-server:/etc/clickhouse-server/users.xml /data/docker/clickhouse/config/users.xml
复制文件2:docker cp temp-clickhouse-server:/etc/clickhouse-server/config.xml /data/docker/clickhouse/config/config.xml
完成复制后,删除临时容器:docker rm -f temp-clickhouse-server
六、运行clickhouse容器
sudo docker run --privileged=true --net=bridge \
-p 8123:8123 \
--name clickhouse-server \
--ulimit nofile=262144:262144 \
-v /data/docker/clickhouse/data:/var/lib/clickhouse \
-v /data/docker/clickhouse/config/config.xml:/etc/clickhouse-server/config.xml \
-v /data/docker/clickhouse/config/users.xml:/etc/clickhouse-server/users.xml \
-v /data/docker/clickhouse/log:/var/log/clickhouse-server \
-e CLICKHOUSE_USER=root \
-e CLICKHOUSE_PASSWORD=clickhouse \
-e CLICKHOUSE_DEFAULT_ACCESS_MANAGEMENT=1 \
-e TZ=Asia/Shanghai \
-d clickhouse/clickhouse-server:24.3.2.23
七、调整配置文件
正常情况下Clickhouse的初始化配置是无法对公访问的,需要调整一下配置