我正在尝试使用官方的docker容器启动clickhouse-server。我拉了最新的一个,尝试启动它并收到以下错误:
Poco::例外。代码:1000,e.code(( = 0,e.displayText(( = 未找到:记录器,e.what(( = 未找到
我正在尝试在带有High Sierra的Mac上执行此操作,怀疑这可能与该问题有关。我像这样运行服务器:
docker run --name some-clickhouse-server --ulimit nofile=262144:262144 -v /Users/dmitrysmirnov/clickhouse/config.xml:/etc/clickhouse-server/config.xml yandex/clickhouse-server
配置:
<yandex>
<listen_host>0.0.0.0</listen_host>
<listen_try>1</listen_try>
<!--
<logger>
<level>trace</level>
<console>1</console>
</logger>
-->
</yandex>
欢迎任何建议/调试想法,谢谢!
实际上,这不是ClickHouse本身的问题。docker run
命令中出错。此处的-v
选项用于设置音量,而不是特定文件。因此,从字面上看,您创建了一个带有路径/etc/clickhouse-server/config.xml/
的目录,该目录是制动器Clickhouse预热。
取而代之的是,我建议您将 config.xml 放在目录中,并将该卷与 ClickHouse 映像中的 config.d 文件夹链接。config.d
,以及users.d
,以及其他.d
被认为正是这样使用的。所以:
docker run --name clickhouse-server -v `(pwd)`/dir/:/etc/clickhouse-server/config.d yandex/clickhouse-server
另外,检查docker run
的其他选项是个好主意。顺便说一句:我发现-d
选项是必须的,因为分离的容器使我的终端更有用。