콘텐츠로 이동

Container Installation

DADP 컨테이너 설치 문서는 현재 Go Hub와 Go Engine 기준으로 제어면과 실행면을 함께 기동하고 검증하는 절차를 설명한다.

이미지 registry와 tag는 배포 시점의 릴리스 문서 또는 artifact manifest에서 확인한다. 운영 환경에서는 latest 대신 검증된 고정 버전 태그를 사용한다.

Scope

이 문서는 다음 범위를 다룬다.

  • Hub 컨테이너 설치
  • Engine 컨테이너 설치
  • Hub-Engine 연결 확인

Wrapper와 DB UDF는 컨테이너 설치 문서가 아니라 각 모듈 설치 문서와 연동 문서에서 다룬다. Aggregator는 현재 공개 기준의 핵심 구성요소로 설명하지 않는다.

Prerequisites

컨테이너 설치 전에 다음 항목을 준비한다.

  • Docker Engine
  • Docker Compose plugin
  • Hub와 Engine이 서로 접근 가능한 네트워크
  • Hub metadata와 secret store를 보존할 volume
  • 배포에 사용할 고정 이미지 태그
docker --version
docker compose version

Hub and Engine Baseline

가장 먼저 안정적으로 구성해야 하는 기준선은 Hub와 Engine이다. Hub는 제어면 원본을 제공하고, Engine은 실행면을 제공한다.

Reference Compose

다음 예시는 Go Hub/Engine의 최소 검증 형태다. 실제 이미지명과 태그는 배포 artifact 기준으로 교체한다.

services:
  hub:
    image: <hub-image>:<version>
    ports:
      - "9004:9004"
    environment:
      DADP_HUB_LOG_LEVEL: info
      DADP_HUB_REQUEST_LOG: "false"
    volumes:
      - hub-data:/var/lib/dadp/hub

  engine:
    image: <engine-image>:<version>
    ports:
      - "9003:9003"
    environment:
      DADP_ENGINE_PORT: "9003"
      DADP_ENGINE_LOG_LEVEL: info
      DADP_ENGINE_REQUEST_LOG: "false"
    depends_on:
      - hub

volumes:
  hub-data:

Compose의 depends_on은 시작 순서만 제어하며, 애플리케이션 준비 완료까지 보장하지 않는다. 초기 설치 직후에는 Hub health를 먼저 확인하고, 그 다음 Engine을 확인한다.

Verification

Hub Health

curl http://localhost:9004/hub/actuator/health

Engine Health

curl http://localhost:9003/engine/api/health

Runtime Connection

설치 완료 판단은 단순 기동 여부가 아니라 제어면, 실행면, 동기화 상태를 함께 확인하는 방식으로 한다.

  1. Hub health가 정상이다.
  2. Engine health가 정상이다.
  3. Hub에서 Engine 등록과 runtime identity 설정이 완료된다.
  4. Engine cache status와 기본 암복호화 round trip을 확인한다.

Completion Criteria

다음 조건을 모두 만족하면 컨테이너 설치가 완료된 것으로 본다.

  • Hub 컨테이너가 정상 기동한다.
  • Engine 컨테이너가 정상 기동한다.
  • Hub health 응답이 정상이다.
  • Engine health 응답이 정상이다.
  • Hub에서 Engine runtime identity와 cache 상태를 확인할 수 있다.