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
原文地址:https://www.cnblogs.com/wshenjin/p/13163042.html