작성
·
143
·
수정됨
0
compose.yml
services:
instagram-server:
image: 420787877062.dkr.ecr.ap-northeast-2.amazonaws.com/instargram-server
ports:
- 8080:8080
depends_on:
my-db:
condition: service_healthy
my-cache-server:
condition: service_healthy
my-db:
image: mysql
environment:
MYSQL_ROOT_PASSWORD: 00000000
MYSQL_DATABASE: mydb
volumes:
- ./mysql_data:/var/lib/mysql
ports:
- 3306:3306
healthcheck:
test: [ "CMD", "mysqladmin", "ping" ]
interval: 5s
retries: 10
my-cache-server:
image: redis
ports:
- 6379:6379
healthcheck:
test: [ "CMD", "redis-cli", "ping" ]
interval: 5s
retries: 10
이렇게 yml을 설정하고
docker inspect 명령어를 사용하여 mysql 정보를 gpt 한테 물어봤더니 아래와 같은 답변이 있었습니다.
현재 MySQL 컨테이너의 상태는 “healthy”로 보이며, 전체적으로 Docker Compose 설정이 잘 작동하고 있다. 하지만 MySQL의 Healthcheck가 Access denied for user 'root'@'localhost' (using password: YES) 오류 메시지를 출력하고 있다. 이는 MySQL이 root 사용자로 접속을 시도할 때 비밀번호 인증에 실패했다는 것을 의미한다.
이를 해결하기 위해서, 비밀번호를 ' 로 감싸서 String으로 인식하도록 유도 하기도 했지만 여전히 문제는 해결되지 않고 있습니다.
구글링을 해본 결과 도커 볼륨과 연관있는 것 같지만 정확한 이유를 모르겠습니다.
답변 1
0
안녕하세요 승욱님! 질문 잘 주셨어요:)
말씀해주신 에러 상황에 대해서는 원인이 다양할 수 있습니다.
지금 짐작되는 에러가 하나 있어서 아래 조치 먼저 시도해보시기 바랍니다.
volume으로 설정한 mysql_data
폴더를 삭제하신 뒤에
다시 docker-compose를 기반으로 컨테이너를 띄워보시기 바랍니다!
(삭제하시기 전에 볼륨에 저장된 데이터가 삭제돼도 괜찮은 지 체크하시고 삭제하시기 바랍니다!)
위와 같이 조치를 했는데도 똑같이 Acesss denied~ 에 관련된 에러가 나온다면
답변 한 번만 남겨주세요~~