docker compose方式如何安裝ClickHouse數(shù)據(jù)庫
問題
本來想著在服務器上面安裝ClickHouse數(shù)據(jù)庫,由于項目預算有限,安裝了一個空的ClickHouse數(shù)據(jù)庫后面,服務器連命令行都卡頓了,免費的服務器都帶不動。
現(xiàn)在就只好嘗試在本地mac m1上面使用docker compose方式安裝試一試了。
默認config.xml
從docker鏡像中,獲取默認config.xml文件,
具體命令如下:
docker run --rm clickhouse/clickhouse-server:25.3.2.39-alpine bash -c "cat /etc/clickhouse-server/config.xml" > config.xml
默認users.xml
從docker鏡像中,獲取默認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 # 啟用訪問管理
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ù)庫版本的時候,盡可能選擇lts版本,也就是長期支持版。
- 這樣數(shù)據(jù)庫在社區(qū)的生命周期長一點。
部署
docker compose up -d
查看進程
docker compose ps
下線
docker compose down
測試驗證
找個數(shù)據(jù)庫工具連接一下數(shù)據(jù)庫即可,效果如下圖:

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

