1.目录结构

2.config.xml
xml
version=
"1.0"
?>
<
yandex
>
<
logger
>
<
level
>trace
level
>
<
log
>/var/log/clickhouse-server/clickhouse-server.log
log
>
<
errorlog
>/var/log/clickhouse-server/clickhouse-server.err.log
errorlog
>
<
size
>1000M
size
>
<
count
>10
count
>
logger
>
<
http_port
>8123
http_port
>
<
tcp_port
>9000
tcp_port
>
<
openSSL
>
<
server
>
<
certificateFile
>/etc/clickhouse-server/server.crt
certificateFile
>
<
privateKeyFile
>/etc/clickhouse-server/server.key
privateKeyFile
>
<
dhParamsFile
>/etc/clickhouse-server/dhparam.pem
dhParamsFile
>
<
verificationMode
>none
verificationMode
>
<
loadDefaultCAFile
>true
loadDefaultCAFile
>
<
cacheSessions
>true
cacheSessions
>
<
disableProtocols
>sslv2,sslv3
disableProtocols
>
<
preferServerCiphers
>true
preferServerCiphers
>
server
>
<
client
>
<
loadDefaultCAFile
>true
loadDefaultCAFile
>
<
cacheSessions
>true
cacheSessions
>
<
disableProtocols
>sslv2,sslv3
disableProtocols
>
<
preferServerCiphers
>true
preferServerCiphers
>
<
invalidCertificateHandler
>
<
name
>RejectCertificateHandler
name
>
invalidCertificateHandler
>
client
>
openSSL
>
<
interserver_http_port
>9009
interserver_http_port
>
<
max_connections
>4096
max_connections
>
<
keep_alive_timeout
>3
keep_alive_timeout
>
<
max_concurrent_queries
>100
max_concurrent_queries
>
<
uncompressed_cache_size
>8589934592
uncompressed_cache_size
>
<
mark_cache_size
>5368709120
mark_cache_size
>
<
path
>/var/lib/clickhouse/
path
>
<
tmp_path
>/var/lib/clickhouse/tmp/
tmp_path
>
<
users_config
>users.xml
users_config
>
<
default_profile
>default
default_profile
>
<
default_database
>default
default_database
>
<
remote_servers
incl=
"clickhouse_remote_servers"
>
<
test_shard_localhost
>
<
shard
>
<
replica
>
<
host
>localhost
host
>
<
port
>9000
port
>
replica
>
shard
>
test_shard_localhost
>
remote_servers
>
<
zookeeper
incl=
"zookeeper-servers"
optional=
"true"
/>
<
macros
incl=
"macros"
optional=
"true"
/>
<
builtin_dictionaries_reload_interval
>3600
builtin_dictionaries_reload_interval
>
<
max_session_timeout
>3600
max_session_timeout
>
<
default_session_timeout
>60
default_session_timeout
>
<
query_log
>
<
database
>system
database
>
<
table
>query_log
table
>
<
flush_interval_milliseconds
>7500
flush_interval_milliseconds
>
query_log
>
<
dictionaries_config
>*_dictionary.xml
dictionaries_config
>
<
compression
incl=
"clickhouse_compression"
>
compression
>
<
distributed_ddl
>
<
path
>/clickhouse/task_queue/ddl
path
>
distributed_ddl
>
<
graphite_rollup_example
>
<
pattern
>
<
regexp
>click_cost
regexp
>
<
function
>any
function
>
<
retention
>
<
age
>0
age
>
<
precision
>3600
precision
>
retention
>
<
retention
>
<
age
>86400
age
>
<
precision
>60
precision
>
retention
>
pattern
>
<
default
>
<
function
>max
function
>
<
retention
>
<
age
>0
age
>
<
precision
>60
precision
>
retention
>
<
retention
>
<
age
>3600
age
>
<
precision
>300
precision
>
retention
>
<
retention
>
<
age
>86400
age
>
<
precision
>3600
precision
>
retention
>
default
>
graphite_rollup_example
>
<
format_schema_path
>/var/lib/clickhouse/format_schemas/
format_schema_path
>
yandex
>
3.user.xml 此处创建两个用户 seluser 和 inuser 密码 都是 8d969eef6ecad3c29a3a629280e686cf0c3f5d5a86aff3ca12020c923adc6c92
xml
version=
"1.0"
?>
<
yandex
>
<
profiles
>
<
default
>
<
max_memory_usage
>10000000000
max_memory_usage
>
<
use_uncompressed_cache
>0
use_uncompressed_cache
>
<
load_balancing
>random
load_balancing
>
default
>
<
readonly
>
<
readonly
>1
readonly
>
readonly
>
profiles
>
<
users
>
<
default
>
<
password
>
password
>
<
networks
incl=
"networks"
replace=
"replace"
>
<
ip
>::1
ip
>
<
ip
>127.0.0.1
ip
>
networks
>
<
profile
>default
profile
>
<
quota
>default
quota
>
default
>
<
seluser
>
<
password
>8d969eef6ecad3c29a3a629280e686cf0c3f5d5a86aff3ca12020c923adc6c92
password
>
<
networks
incl=
"networks"
replace=
"replace"
>
<
ip
>::/0
ip
>
networks
>
<
profile
>readonly
profile
>
<
quota
>default
quota
>
seluser
>
<
inuser
>
<
password
>8d969eef6ecad3c29a3a629280e686cf0c3f5d5a86aff3ca12020c923adc6c92
password
>
<
networks
incl=
"networks"
replace=
"replace"
>
<
ip
>::/0
ip
>
networks
>
<
profile
>default
profile
>
<
quota
>default
quota
>
inuser
>
users
>
<
quotas
>
<
default
>
<
interval
>
<
duration
>3600
duration
>
<
queries
>0
queries
>
<
errors
>0
errors
>
<
result_rows
>0
result_rows
>
<
read_rows
>0
read_rows
>
<
execution_time
>0
execution_time
>
interval
>
default
>
quotas
>
yandex
>
4.mkdir {data,log} 创建空文件夹 ,在 log 文件夹下创建 两个文件
touch {clickhouse-server.err.log,clickhouse-server.log}
5.docker-compose.yml
version:
'3'
services:
clickhouse-server:
image:
yandex/clickhouse-server
container_name:
clickhouse-server
hostname:
clickhouse-server
ports:
-
8123:8123
expose:
-
9000
-
9009
volumes:
-
./config.xml:/etc/clickhouse-server/config.xml
-
./users.xml:/etc/clickhouse-server/users.xml
-
./data:/var/lib/clickhouse
-
./log/clickhouse-server.log:/var/log/clickhouse-server/clickhouse-server.log
-
./log/clickhouse-server.err.log:/var/log/clickhouse-server/clickhouse-server.err.log
6.进入文件目录执行 docker-compose up -d 如果出现权限问题
chmod 777 -R clickhouse-server 给文件 所有权限
7.通过用户名密码调出客户端
docker run -it --rm --link clickhouse-server:clickhouse-server --net clickhouse-server_default yandex/clickhouse-client --host clickhouse-server --user seluser --password 8d969eef6ecad3c29a3a629280e686cf0c3f5d5a86aff3ca12020c923adc6c92