docker compose方式如何安裝ClickHouse數(shù)據(jù)庫(kù)
問(wèn)題
本來(lái)想著在服務(wù)器上面安裝ClickHouse數(shù)據(jù)庫(kù),由于項(xiàng)目預(yù)算有限,安裝了一個(gè)空的ClickHouse數(shù)據(jù)庫(kù)后面,服務(wù)器連命令行都卡頓了,免費(fèi)的服務(wù)器都帶不動(dòng)。
現(xiàn)在就只好嘗試在本地mac m1上面使用docker compose方式安裝試一試了。
默認(rèn)config.xml
從docker鏡像中,獲取默認(rèn)config.xml文件,
具體命令如下:
docker run --rm clickhouse/clickhouse-server:25.3.2.39-alpine bash -c "cat /etc/clickhouse-server/config.xml" > config.xml
默認(rèn)users.xml
從docker鏡像中,獲取默認(rèn)users.xml文件,具體命令如下:
docker run --rm clickhouse/clickhouse-server:25.3.2.39-alpine bash -c "cat /etc/clickhouse-server/users.xml" > users.xml
docker-compose.yml
services:
clickhouse-server:
image: clickhouse/clickhouse-server:25.3.2.39-alpine
container_name: clickhouse-server
environment:
- CLICKHOUSE_PASSWORD=admin123 # 用戶密碼
- CLICKHOUSE_DEFAULT_ACCESS_MANAGEMENT=1 # 啟用訪問(wèn)管理
ports:
- "8123:8123" # HTTP接口
- "9000:9000" # 客戶端TCP接口
volumes:
- ./data:/var/lib/clickhouse # 數(shù)據(jù)持久化
- ./config.xml:/etc/clickhouse-server/config.xml # 自定義配置
- ./users.xml:/etc/clickhouse-server/users.xml # 用戶配置
- ./logs:/var/log/clickhouse-server
ulimits:
nofile:
soft: 262144
hard: 262144注意:
- 你選擇clickhouse數(shù)據(jù)庫(kù)版本的時(shí)候,盡可能選擇lts版本,也就是長(zhǎng)期支持版。
- 這樣數(shù)據(jù)庫(kù)在社區(qū)的生命周期長(zhǎng)一點(diǎn)。
部署
docker compose up -d
查看進(jìn)程
docker compose ps
下線
docker compose down
測(cè)試驗(yàn)證
找個(gè)數(shù)據(jù)庫(kù)工具連接一下數(shù)據(jù)庫(kù)即可,效果如下圖:

總結(jié)
ClickHouse數(shù)據(jù)庫(kù)還是挺吃性能的。生產(chǎn)環(huán)境最好還是按照官網(wǎng)文件推薦配置進(jìn)行部署。
clickhouse/clickhouse-server這個(gè)docker鏡像雖然在docker hub上面沒(méi)有被clickhouse公司認(rèn)證為官方鏡像,但是在生產(chǎn)環(huán)境部署的文檔中和github源代碼中,生產(chǎn)環(huán)境部署還是使用的這個(gè)docker鏡像的。
不用擔(dān)心這個(gè)鏡像沒(méi)有像clickhouse鏡像那樣,被clickhouse公司認(rèn)證為官方鏡像??傊琧lickhouse/clickhouse-server還是很靠譜的,盡管沒(méi)有被clickhouse公司認(rèn)證。
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
解決docker run時(shí)候啟動(dòng)兩個(gè)占有不同端口的問(wèn)題
這篇文章主要介紹了解決docker run時(shí)候啟動(dòng)兩個(gè)占有不同端口的問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2020-11-11
Docker從json-file到syslog的集中化管理實(shí)戰(zhàn)指南
本次實(shí)戰(zhàn)通過(guò)對(duì)比 json-file 與 syslog 兩種日志驅(qū)動(dòng),演示了 Docker 容器日志的本地存儲(chǔ)與系統(tǒng)日志集成方式,并成功將默認(rèn)日志驅(qū)動(dòng)全局配置為 syslog,實(shí)現(xiàn)日志集中化管理,感興趣的朋友跟隨小編一起看看吧2025-12-12
解決docker運(yùn)行tomcat提示找不到文件的問(wèn)題
這篇文章主要介紹了docker運(yùn)行tomcat提示找不到文件的問(wèn)題及解決方法,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友參考下吧2023-03-03
淺談Docker-compose中的depends_on順序的問(wèn)題解決
本文主要介紹了淺談Docker-compose中的depends_on順序的問(wèn)題解決,文中通過(guò)示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2021-11-11
Docker 端口映射與容器互聯(lián)的實(shí)現(xiàn)
Docker的端口映射和容器互聯(lián)是構(gòu)建和管理微服務(wù)架構(gòu)時(shí)重要的概念,本文主要介紹了Docker 端口映射與容器互聯(lián)的實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2025-01-01

