docker-compose 버전

DB 가 준비되어 있을 때

version: "3"
services:      
  <service-name>:
    image: "metabase/metabase:v0.46.4"
    container_name: "<container-name>"
    volumes:
      - ./metabase.db:/metabase.db  # H2 제외 한 application DB는 metabase.db 라는 파일에 저장됨. h2 는 metabase.db.mv.db
    environment:
      - JAVA_OPTS=-Xmx1024m
      - MB_DB_FILE=metabase.db
      - MB_DB_CONNECTION_URI=mysql://<dbUrl>:<port>/<dbName>?user=<user>&password=<password>&allowPublicKeyRetrieval=true
    networks:
      - "frontend"
      - "backend"
    ports: 
      - "9000:3000"
    restart: "on-failure"

networks:
  frontend:
  backend:

DB가 없을 때

application db 를 default 설정인 h2 로 하게 되면 설정한게 별로 없을 경우에는 빠르지만 파일 기반 이기 때문에 설정이나 dashboard 등 데이터가 많아지면 많아질 수록 느려지게 된다. 성능저하의 원인

파일을 풀 스캔 하기 때문에 CPU 사용량이 튀게 된다. image.png


docker-compose 도 container 버전과 동일하게 Oracle jar 파일을 설치 후 옮겨주면 된다.

Last updated