Dockerfile 1.6 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253
  1. FROM ubuntu:20.04
  2. ARG CLICKHOUSE_VERSION=22.2.2.1
  3. ARG CLICKHOUSE_GOSU_VERSION=1.14
  4. RUN apt-get update \
  5. && apt-get install --yes --no-install-recommends \
  6. apt-transport-https \
  7. dirmngr \
  8. gnupg \
  9. && mkdir -p /etc/apt/sources.list.d \
  10. && apt-key adv --keyserver keyserver.ubuntu.com --recv E0C56BD4 \
  11. && echo "deb http://repo.yandex.ru/clickhouse/deb/stable/ main/" > /etc/apt/sources.list.d/clickhouse.list \
  12. && apt-get update \
  13. && env DEBIAN_FRONTEND=noninteractive \
  14. apt-get install --allow-unauthenticated --yes --no-install-recommends \
  15. clickhouse-common-static=$CLICKHOUSE_VERSION \
  16. clickhouse-client=$CLICKHOUSE_VERSION \
  17. clickhouse-server=$CLICKHOUSE_VERSION \
  18. locales \
  19. tzdata \
  20. wget \
  21. && rm -rf \
  22. /var/lib/apt/lists/* \
  23. /var/cache/debconf \
  24. /tmp/* \
  25. && apt-get clean
  26. ADD https://github.com/tianon/gosu/releases/download/$CLICKHOUSE_GOSU_VERSION/gosu-amd64 /bin/gosu
  27. RUN locale-gen en_US.UTF-8
  28. ENV LANG en_US.UTF-8
  29. ENV LANGUAGE en_US:en
  30. ENV LC_ALL en_US.UTF-8
  31. RUN mkdir /docker-entrypoint-initdb.d
  32. COPY docker_related_config.xml /etc/clickhouse-server/config.d/
  33. COPY config.xml /etc/clickhouse-server/config.xml
  34. COPY entrypoint.sh /entrypoint.sh
  35. RUN chmod +x \
  36. /entrypoint.sh \
  37. /bin/gosu
  38. EXPOSE 9000 8123 9009
  39. VOLUME /var/lib/clickhouse
  40. ENV CLICKHOUSE_CONFIG /etc/clickhouse-server/config.xml
  41. ENV CLICKHOUSE_USER ${CLICKHOUSE_USER}
  42. ENV CLICKHOUSE_PASSWORD ${CLICKHOUSE_PASSWORD}
  43. ENTRYPOINT ["/entrypoint.sh"]