Skip to content

[BUG] PR #46 설정 불일치로 Docker 환경 실행 불가 #48

@qowlgur121

Description

@qowlgur121

문제 요약

PR #46 (feature/rag/#37) 브랜치의 설정 파일들이 docker-compose.yml과 일치하지 않아 Docker 환경에서 서비스 실행이 불가합니다.

재현 방법

git checkout feature/rag/#37
docker compose up -d postgres elasticsearch ollama minio open-context-rag open-context-core
docker logs open-context-core

에러 메시지

org.springframework.boot.context.config.InvalidConfigDataPropertyException: 
Property 'spring.profiles.active' imported from location 'class path resource [application-docker.yml]' 
is invalid in a profile specific resource

발견된 문제점

1. application-docker.yml 설정 오류

항목 현재 값 올바른 값
spring.profiles.active dev (Line 6) 삭제 필요 (profile-specific 파일에서 사용 불가)
datasource.url localhost:5432 postgres:5432
datasource.username postgres user
datasource.password 3482 password
app.rag.service.url localhost:8001 open-context-rag:8001
app.elasticsearch.url localhost:9200 elasticsearch:9200
app.ollama.api.url localhost:11434 ollama:11434
minio.endpoint localhost:9000 minio:9000
minio.secret-key minioadmin minioadmin123!

2. 임베딩 모델 불일치

  • PR 설명: bge-m3:latest, 1024차원
  • docker-compose.yml: dengcao/Qwen3-Embedding-0.6B:F16
  • application.yml: bge-m3:latest

3. Dockerfile 베이스 이미지 문제

# 현재 (존재하지 않는 이미지)
FROM openjdk:21-jdk-slim
FROM openjdk:21-slim

# 올바른 이미지
FROM eclipse-temurin:21-jdk-jammy
FROM eclipse-temurin:21-jre-jammy

4. MCP Adapter 빌드 실패

index.ts(91,3): error TS2589: Type instantiation is excessively deep and possibly infinite.

package-lock.json이 없어서 @modelcontextprotocol/sdk 버전이 빌드 시점마다 달라질 수 있음.

영향 범위

  • Docker 환경에서 open-context-core 서비스 시작 불가
  • MCP Adapter 빌드 불가
  • PR 설명과 실제 구현 불일치

관련 파일

  • core/src/main/resources/application-docker.yml
  • core/Dockerfile
  • docker-compose.yml
  • mcp-adapter/package.json

제안하는 해결 방법

  1. application-docker.yml에서 spring.profiles.active 제거 및 서비스명으로 호스트 변경
  2. docker-compose.yml의 임베딩 모델을 bge-m3:latest로 통일
  3. Dockerfile 베이스 이미지를 eclipse-temurin으로 변경
  4. mcp-adapter에 package-lock.json 추가

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions