DevOps & Infra/Docker

도커 에러 메세지 정리

hyunji00pj 2025. 6. 20. 11:01

밀버스 연결 오류

[ERROR] [grpcclient/client.go:429] ["retry func failed"] 
[error="empty grpc client: failed to connect 172.18.0.2:53100, reason: connection error: desc = \"transport: error while dialing: dial tcp 172.18.0.2:53100: connect: connection refused\""]

 

 

세션 등록 충돌 오류

[ERROR] [sessionutil/session_util.go:468] ["retry func failed"] 
[error="function CompareAndSwap error for compare is false for key: rootcoord"]

 

 

컨테이너 종료

STATUS: Exited (137) 5 minutes ago

 

# Excited (137)

# 의미: 메모리 부족으로 강제 종료



# 포트 충돌

bine: address already in use

# 해결책:

lsof -i :<port_num>

# 위 명령어로 사용 포트 확인 후 

sudo kill -9 <PID>

# 위 명령어로 충돌하는 프로세스 종료



# 네트워크 연결 오류

# 증상 : connection refused, timeout

# 해결책:

docker network ls

docker network inspect <network_name>

# 위 명령어로 네트워크 확인 후 



docker-compose restart

# 컨테이너 재 시작

# 증상 permission denied, no such file or directory
# 해결책 :

# 볼륨 권한 확인
ls -ls <volume_path>

# 볼륨 재생성
docker volume rm <volume_name>
docker volume create <volume_name>

 

만약 같은 이름의 같은 포트를 사용하는 컨테이너가 두개 있으면 충돌나서 둘다 꼬일수 있음

이점 주의해서 컨테이너 올릴 것.

만약 이미 꼬였다면 하나는 포트넘버랑 이름 바꿔서 리빌딩 하면 됨

 

 

도커 오류 읽는 방법

1. 로그 레벨 확인

[INFO]: 정상적인 정보
[WARN]: 경고 (문제 가능성)
[ERROR]: 오류 (즉시 해결 필요)
[DEBUG]: 디버그 정보

 

# 도커 실행 중인 컨테이너 확인
docker ps

# 모든 컨테이너 확인 ( 종료된거 포함 )
docker ps -a

# 컨테이너 상세 정보
docker inspect <container_name>

# 도커 로그 분석
docker logs <container_name>

# 도커 리소스 확인
docker stats

# 네트워크 확인
docker network ls
docker network inspect <network_name>

# 컨테이너 중지 및 삭제
docker-compose down

# 사용하지 않는 볼륨 제거
docker volume prune

# 특정 볼륨 제거
docker volume rm <볼륨_이름>

# 사용하지 않는 전체 볼륨 제거
docker system prune -a --volumes

컨테이너를 삭제해도 볼륨은 기본적으로 남아있습니다.

 

Docker의 volume?

도커에서 볼륨(Volume)은 컨테이너의 데이터를 영속적으로 저장하기 위한 스토리지 메커니즘입니다. 컨테이너는 기본적으로 상태를 유지하지 않으며, 컨테이너가 삭제되면 내부 데이터도 함께 사라집니다. 이를 해결하기 위해 볼륨을 사용해 데이터를 컨테이너 외부에 저장합니다.