ClickHouse/docker/test/integration/base/Dockerfile

65 lines
2.2 KiB
Docker
Raw Normal View History

# rebuild in #33610
2021-09-06 11:33:39 +00:00
# docker build -t clickhouse/integration-test .
ARG FROM_TAG=latest
FROM clickhouse/test-base:$FROM_TAG
2019-07-09 19:41:22 +00:00
2021-06-18 11:02:15 +00:00
SHELL ["/bin/bash", "-c"]
2019-05-21 06:17:46 +00:00
RUN apt-get update \
2019-12-13 13:56:53 +00:00
&& env DEBIAN_FRONTEND=noninteractive apt-get -y install \
bsdutils \
curl \
default-jre \
g++ \
2019-12-13 13:56:53 +00:00
gdb \
iproute2 \
krb5-user \
libicu-dev \
2019-12-13 13:56:53 +00:00
libsqlite3-dev \
libsqliteodbc \
lsof \
lz4 \
2019-12-13 13:56:53 +00:00
odbc-postgresql \
odbcinst \
python3 \
rpm2cpio \
2019-12-13 13:56:53 +00:00
sqlite3 \
tar \
tzdata \
unixodbc \
&& apt-get clean \
&& rm -rf /var/lib/apt/lists/* /var/cache/debconf /tmp/*
2021-06-18 11:02:15 +00:00
# Architecture of the image when BuildKit/buildx is used
ARG TARGETARCH
2019-12-13 13:56:53 +00:00
# Install MySQL ODBC driver from RHEL rpm
RUN arch=${TARGETARCH:-amd64} \
&& case $arch in \
amd64) rarch=x86_64 ;; \
arm64) rarch=aarch64 ;; \
esac \
&& cd /tmp \
&& curl -o mysql-odbc.rpm "https://cdn.mysql.com/Downloads/Connector-ODBC/8.0/mysql-connector-odbc-8.0.27-1.el8.${rarch}.rpm" \
&& rpm2archive mysql-odbc.rpm \
&& tar xf mysql-odbc.rpm.tgz -C / ./usr/lib64/ \
&& LINK_DIR=$(dpkg -L libodbc1 | grep '^/usr/lib/.*-linux-gnu/odbc$') \
&& ln -s /usr/lib64/libmyodbc8a.so "$LINK_DIR" \
&& ln -s /usr/lib64/libmyodbc8a.so "$LINK_DIR"/libmyodbc.so
2021-06-18 11:02:15 +00:00
# Unfortunately this is required for a single test for conversion data from zookeeper to clickhouse-keeper.
# ZooKeeper is not started by default, but consumes some space in containers.
# 777 perms used to allow anybody to start/stop ZooKeeper
ENV ZOOKEEPER_VERSION='3.6.3'
RUN curl -O "https://dlcdn.apache.org/zookeeper/zookeeper-${ZOOKEEPER_VERSION}/apache-zookeeper-${ZOOKEEPER_VERSION}-bin.tar.gz"
2021-06-18 11:02:15 +00:00
RUN tar -zxvf apache-zookeeper-${ZOOKEEPER_VERSION}-bin.tar.gz && mv apache-zookeeper-${ZOOKEEPER_VERSION}-bin /opt/zookeeper && chmod -R 777 /opt/zookeeper && rm apache-zookeeper-${ZOOKEEPER_VERSION}-bin.tar.gz
RUN echo $'tickTime=2500 \n\
tickTime=2500 \n\
dataDir=/zookeeper \n\
clientPort=2181 \n\
maxClientCnxns=80' > /opt/zookeeper/conf/zoo.cfg
RUN mkdir /zookeeper && chmod -R 777 /zookeeper
ENV TZ=Europe/Moscow
RUN ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone