본문 바로가기
마구니 패치 노트

도커 프로필설정 적용 안되는 문제 해결 기록

by puy0 2026. 1. 19.

Spring Boot 앱을 도커로 재 배포시 문제가 생겼다
sml-db (MariaDB) 와 연동이 되지않아 서버 컨테이너가 즉시 종료 되었다

서버로그에는 디비연결이 안되는 Connection refused 가 생성 되었고
디비접속은 문제가 없었다
서버는 계속 localhost:3306으로 시도하다가 꺼져버렸고
이런 설정은 금방 해결 할 수 있을거라 생각했는데 오래 걸렸다

프로퍼티즈는 도커버전이 있고 도커버전에는 컨테이너명이 정확히 명시 되어 있었다

 

그래서 DB설정은 맞고 컨테이너를 새로 올렸으니 도커네트워크 상 에서 빠져버린 문제일것이라 추측했다
실제 네트워크를 확인해 보니 당연히 서버 컨테이너가 없었고

( --network 속성으로 붙혀 생성돼도  종료된 컨테이너는 보이지 않음 )

몇가지 시도 후 localhost에 접속을 시도 한다는걸 알게되었다

컨테이너속에서 서버만 띄우는것이기때문에 해당 컨테이너의 로컬엔 db가 없다
어플리케이션-도커.프로퍼티즈의 적용이 안된것이며
이를 적용해주며 문제를 해결 했다

application-xxx.properties의 xxx라는 키워드는
SPRING_PROFILES_ACTIVE=XXX

로 지정 할 수 있다 github actions 와 비슷하다

 

마지막 해결 정리
기존 컨테이너 삭제
docker rm -f sharemylist-app

 

설정지정 후 다시 빌드,런

socker run -d --name sharemylsit-app`

    --network sml-net`

    -p 8080:8080`

    -e SPRING_PROFILES_ACTIVE=docker`

    sharemylsit-app:lastest

 

상태 확인

docker network inspect sml-net

 

프로필 "docker"를 명시하지않아 생긴 문제로 상황에따른 올바른 명시가 중요하다

 

댓글