# 1. Docker Compose (가장 간편) # 같은 compose 파일의 서비스는 서비스명으로 통신 services: app: image: myapp environment: - DB_HOST=db # 서비스명이 호스트명 db: image: postgres
# app 컨테이너에서: postgres://db:5432/mydb
# 2. 커스텀 네트워크 docker network create mynet docker run --network mynet --name api myapi docker run --network mynet --name db postgres # api에서: postgres://db:5432
같은 네트워크 안에서는 컨테이너 이름이 곧 호스트명입니다. localhost가 아닌 서비스명으로 접근하세요.
배배준호(guest)2년 전
docker compose에서 depends_on을 쓰면 DB가 준비된 후에 앱이 시작되나요?
김김영삼2년 전
아닙니다! depends_on은 컨테이너 시작 순서만 보장하지, DB가 "준비"됐는지는 확인하지 않습니다.
댓글 3
Docker 컨테이너 간 통신:
같은 네트워크 안에서는 컨테이너 이름이 곧 호스트명입니다. localhost가 아닌 서비스명으로 접근하세요.
아닙니다! depends_on은 컨테이너 시작 순서만 보장하지, DB가 "준비"됐는지는 확인하지 않습니다.