Free Lines Arrow
본문 바로가기
Development/Docker

[Docker] ClickHouse DB 연동

by skahn1215 2022. 4. 3.
728x90
반응형

ClickHouse DB

  • Docker 로 ClickHouse 를 띄워보자

 

진행순서

  • clickhouse 에 필요한 config 파일 생성
  • dokcer file 생성
  • docker image build
  • docker container 실행
  • clickhouse-sever 실행
  • clickhouse-client 로 접속후 database 생성
  • db 접속

 

Clickhouse 에 필요한 파일 생성

users.xml

  • 사용자의 기본 password 생성
<clickhouse>
      <!-- Docs: <https://clickhouse.com/docs/en/operations/settings/settings_users/> -->
      <users>
        <!-- Remove default user -->
        <default remove="remove">
        </default>
        <user>
          <profile>default</profile>
          <password>user</password>
          <quota>default</quota>
        </user>
      </users>
 </clickhouse>

 

docker_related_config.xml

  • 모든 포트를 받기 위한 설정 파일 추가
<yandex>
     <!-- Listen wildcard address to allow accepting connections from other containers and host network. -->
    <listen_host>::</listen_host>
    <listen_host>0.0.0.0</listen_host>
    <listen_try>1</listen_try>

    <!--
    <logger>
        <console>1</console>
    </logger>
    -->
</yandex>

 

 

Docker 파일 생성

  • 파일명 clickhouse-docker
FROM ubuntu:18.04

RUN apt-get update //apache 설치 
RUN apt-get install sudo //sudo 설치
RUN apt-get install -y  vim // vi 설치
RUN apt-get install net-tools //net tools 설치
RUN apt-get install -y apt-transport-https ca-certificates dirmngr
RUN apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 8919F6BD2B48D754
RUN echo "deb https://packages.clickhouse.com/deb stable main" | tee /etc/apt/sources.list.d/clickhouse.list
RUN apt-get update
COPY ./users.xml /etc/clickhouse-server/users.d/
COPY ./docker_related_config.xml /etc/clickhouse-server/config.d/docker_related_config.xml
ENV DEBIAN_FRONTEND=noninteractive
RUN apt-get install -y clickhouse-server clickhouse-client
EXPOSE 8123

 

Docker image 빌드

 docker build --platform linux/amd64 -t clickhouse-server -f ./clickhouse-docker .

 

Docker Container 실행

  • 반드시 8123 으로 해줘야 한다. 안그러면 에러가 발생한다.
  • 자동으로 ubuntu 로 접속이 된다.
docker run -it  -p 8123:8123/tcp clickhouse-server

 

 

clickhouse-server 실행

  • 아래처럼 입력을 해줘 bash 쉘로 전환후
  • service clickhouse-server start 로 클릭하우스 서버를 실행한다.

  • 제대로 수행이 되면 Server started 가 나온다.

 

 

clickhouse-client 로 DB 생성 

  • 로그인을 해준다.
  • clickhouse-client --user user --password user
  • 로그인 성공시 화면

  • DB 를 생성해준다.
CREATE DATABASE test
  • DB 생성성공시 화면

 

테스트

  • IntellIj 에서 Clickhouse DB 접속 테스트

728x90
반응형

'Development > Docker' 카테고리의 다른 글

[Docker] Docker 설치하기  (0) 2021.07.22
[Docker] Docker 의 개념  (0) 2021.07.21

댓글