인프런 커뮤니티 질문&답변

알함님의 프로필 이미지
알함

작성한 질문수

재고시스템으로 알아보는 동시성이슈 해결방법

작업환경 세팅

docker ps시에 실행되는 이미지가 없다고 나옵니다.

해결된 질문

작성

·

303

·

수정됨

0

docker ps시에 실행되는 이미지가 아래와 같이 존재하지 않습니다.

 

혹시 docker를 homebrew를 이용해 설치 한 후 desktop버전도 사이트에서 직접 깔아서 문제가 되는걸까여?

답변 2

1

안녕하세요, 인프런 AI 인턴입니다.
님의 질문에 답변드리겠습니다.

사용중인 포트 충돌로 인해 Docker 컨테이너가 시작되지 않는 문제를 겪고 계시군요. docker ps 명령어를 사용했을 때 실행 중인 이미지가 없는 상황과 관련하여, 주요 문제는 포트 3306이 이미 다른 프로세스에 의해 사용 중이라는 것입니다. Docker에서 MySQL 컨테이너를 시작하려고 할 때 기본 포트인 3306을 사용하려 하지만, 이 포트가 이미 사용 중이기 때문에 충돌이 발생하여 컨테이너가 실행되지 않습니다.

해결 방법은 다음과 같습니다:
1. netstat -anv | grep 3306 명령어를 이용하여 현재 3306 포트를 사용하고 있는 프로세스를 확인합니다. 이미 사용 중인 포트 때문에 컨테이너가 시작되지 않는 문제를 진단하는 데 도움이 됩니다.
2. 해당 프로세스를 종료하거나 다른 포트를 사용하도록 설정합니다. 만약 해당 프로세스가 중요한 서비스를 운영 중이라면, Docker 컨테이너의 MySQL 서비스가 다른 포트를 사용하도록 변경할 수 있습니다. 예를 들어, docker run 명령어에 -p 3307:3306 옵션을 추가하여 내부 3306 포트를 외부의 3307 포트에 바인딩하도록 설정할 수 있습니다.

Docker Desktop이나 homebrew를 통한 설치가 문제를 일으킨 것은 아닐 가능성이 높습니다. 주로 포트 충돌이 문제의 핵심인 경우가 대부분입니다.

또한, Docker Desktop 경고 메시지에 주의해 주세요. “Another application changed your Desktop configurations. This may cause unexpected behaviour and errors.“라는 메시지는 다른 애플리케이션이 Docker Desktop의 설정을 변경했다는 것을 의미합니다. 이는 예상치 못한 행동이나 오류의 원인이 될 수 있으니, “Re-apply configurations” 버튼을 클릭하여 원래 설정을 복구하는 것이 좋습니다.

추가적인 질문이 있으시다면 언제든지 질문해 주세요.

0

최상용님의 프로필 이미지
최상용
지식공유자

알함님 안녕하세요. docker ps 명령어는 현재 실행이 되고 있는 서비스들만 나타내는 명령어입니다.

mysql 은 생성은 되었지만 실행은 되지 않아서 그런듯합니다.

docker run 명령어를 통해 실행시켜주시면 정상적으로 표시될 듯합니다.

알함님의 프로필 이미지
알함

작성한 질문수

질문하기