clickhouse单机Docker镜像

个人学习笔记,谢绝转载!!!
原文:https://www.cnblogs.com/wshenjin/p/13163042.html


制作个简单单机版的clickhouse镜像,可以随时可用
Dockerfile

FROM centos

COPY ["src","/src"]

#clickhouse用户组统一uid:gid为1003:1003
RUN groupadd -g 1003 clickhouse \
    && useradd -u 1003 -g clickhouse -s /sbin/nologin clickhouse ;\
    cd /src/ \
    && mv clickhouse_entrypoint.sh / \ 
    && mv gosu /usr/bin/ \
    && rpm -ivh clickhouse-common-static-20.3.11.97-1.el7.x86_64.rpm \
                clickhouse-server-20.3.11.97-1.el7.x86_64.rpm \
                clickhouse-server-common-20.3.11.97-1.el7.x86_64.rpm  \
                clickhouse-client-20.3.11.97-1.el7.x86_64.rpm ;\
    mkdir -p /data/clickhouse/{data,logs} /etc/clickhouse-server \
    && chown clickhouse:clickhouse -R /data/clickhouse  \
    && mv config.xml users.xml /etc/clickhouse-server ;\
    yum remove -y iputils* \
                  bind* \
                  vim* \
                  make \
                  cmake \
                  cpp \
                  acl \
                  rootfiles \
                  lzo \
                  readline-devel \ 
                  python-chardet \
                  hostnamed \
                  bus-python \
                  gobject-introspection \
                  libxml2-python \
                  python-gobject-base \
                  basesystem \
                  libgomp \
                  libstdc++-devel \
                  glibc-headers \
                  mpfr \
                  passwd \
                  yum-plugin-ovl \
                  dbus-glib \
                  python-kitchen \
                  ncurses-devel \
                  kernel-headers \
                  gpg-pubkey \ 
                  hostname \
                  yum-util > /dev/null 2>&1 ;\
    userdel mail \
    && userdel ftp \
    && userdel games \
    && userdel nobody \
    && userdel bin \
    && userdel adm \
    && userdel operator \
    && userdel halt \
    && userdel shutdown \
    && userdel systemd-network \
    && userdel sync \      
    && userdel lp \
    && userdel daemon ;\
    ln -svf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime ;\
    rm -rf /src \
           /root/.bash* \
           /root/.cshrc \
           /root/.tcshrc \
           /var/cache \
           /usr/local/* \
           /var/lib/clickhouse

EXPOSE 9000
ENTRYPOINT ["/clickhouse_entrypoint.sh"]

clickhouse_entrypoint.sh

#!/bin/sh

chown clickhouse:clickhouse -R /data/clickhouse/
exec /usr/bin/gosu clickhouse /bin/sh -c "/usr/bin/clickhouse-server --pid-file=/tmp/clickhouse-server.pid --config-file=/etc/clickhouse-server/config.xml"

src目录,准备好rpm包 配置文件 ENTRYPOINT 等:

-rw-rw-r-- 1 root root     6384 Jun 18 14:26 clickhouse-client-20.3.11.97-1.el7.x86_64.rpm
-rw-rw-r-- 1 root root 54645668 Jun 18 14:26 clickhouse-common-static-20.3.11.97-1.el7.x86_64.rpm
-rwx------ 1 root root      217 Jun 18 16:28 clickhouse_entrypoint.sh
-rw-rw-r-- 1 root root 34530968 Jun 18 14:26 clickhouse-server-20.3.11.97-1.el7.x86_64.rpm
-rw-rw-r-- 1 root root    11224 Jun 18 14:26 clickhouse-server-common-20.3.11.97-1.el7.x86_64.rpm
-rw-rw-r-- 1 root root  1718800 Jun 18 14:26 clickhouse-test-20.3.11.97-1.el7.x86_64.rpm
-rw-r--r-- 1 root root    22647 Jun 18 16:37 config.xml
-rwxrwxr-x 1 root root  1286720 Jun 18 16:28 gosu
-rw-r--r-- 1 root root     5190 Jun 18 17:53 users.xml

制作镜像:

docker run -tid --name=clickhouse clickhouse-v20.3
posted @ 2020-06-19 14:49  wshenJin  阅读(1237)  评论(1编辑  收藏  举报