inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

비전공자도 이해할 수 있는 Docker 입문/실전

[실습] Docker로 MySQL 실행시켜보기 - 3

docker volume 생성 이후 container 종료

146

jangutm600

작성한 질문수 1

0

docker run -d -p 3306:3306 -e MYSQL_ROOT_PASSWORD=pwd1234 -v /mnt/c/Users/jsill/Desktop/docker-mysql/mysq
l_data:/var/lib/mysql mysql                        

위와 같이 docker 를 실행하면 처음엔 실행이 잘되다가 10초 정도 이후에 실행이 종료됩니다.

 

log를 조회해도 매번 다른 오류가 발생합니다.

mysqld: Table 'mysql.plugin' doesn't exist

Could not open the mysql.plugin table. Please perform the MySQL upgrade procedure.

OS는 윈도우 사용중입니다.

docker docker-compose docker-volume docker-image container ecr

답변 2

0

JSCODE 박재성

안녕하세요 jangutm600님! 질문 잘 주셨습니다~~~!!

윈도우를 쓰고 계시다면

/mnt/c/Users/jsill/Desktop/docker-mysql/mysql_data

위 명령어를 아래 명령어로 바꿔보시겠어요~??

c://Users/jsill/Desktop/docker-mysql/mysql_data

 

이렇게 작성했는데도 불구하고 에러가 나면 아래 링크로 연락 한 번 주시기 바랍니다!

https://open.kakao.com/o/srGtpusg

 

0

인프런 AI 인턴

안녕하세요, 인프런 AI 인턴입니다. jangutm600님!

Docker에서 MySQL 컨테이너가 실행된 후 곧 종료되는 현상을 겪고 계시군요. 로그에 나타난 mysql.plugin 테이블 관련 오류는 일반적으로 초기 설정이 제대로 완료되지 않았거나, 볼륨 마운트 시의 문제로 인해 발생할 수 있습니다.

이 문제는 주로 다음과 같은 이유로 발생할 수 있습니다:

  1. 볼륨 마운트 문제: Docker에서 MySQL 데이터베이스 파일을 저장할 디렉토리를 호스트 시스템의 경로로 마운트할 때 경로 설정이 잘못되었거나, 권한 문제로 인해 쓰기 불가능한 경우 발생할 수 있습니다. 윈도우에서는 파일 시스템과 관련된 문제로 인해 WSL2를 사용하는 경우 특히 주의가 필요합니다.

  2. MySQL 초기 설정 미완료: MySQL 컨테이너가 처음 시작될 때, 데이터베이스와 테이블을 생성하는 초기 설정 과정에서 오류가 발생한 경우, mysql.plugin 테이블이 존재하지 않을 수 있습니다. 이는 볼륨이 제대로 설정되어 있지 않거나, 초기 데이터 디렉토리가 이미 사용 중이었을 때 발생할 수 있습니다.

해결 방법:

  • 볼륨 경로 확인: 현재 사용 중인 경로 /mnt/c/Users/jsill/Desktop/docker-mysql/mysql_data가 올바른지, 그리고 권한이 적절하게 설정되어 있는지 확인하세요. 경로 안의 데이터를 모두 삭제한 후 다시 시도해 보시길 권장합니다.

  • 초기 설정 확인: MySQL 이미지를 새로 다운로드하여 초기 설정 과정이 제대로 진행되는지 확인할 수 있도록, docker volume 명령어를 사용하여 익명 볼륨을 활용하는 것도 방법입니다.

관련된 추가 정보를 얻을 수 있는 유사한 질문을 소개해드리겠습니다:

  1. 윈도우 환경에서 실행하는데 보이지 않습니다.: Docker 볼륨과 데이터베이스 관련 이슈 해결에 도움이 될 수 있습니다.

  2. 윈도우 볼륨 생성 안되는 문제: 윈도우에서 경로를 다루는 방법과 관련된 문제를 해결하는 데 유용한 게시물입니다.

저는 질문자님의 이해를 돕고자 지식 공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.

EC2 터미널에서 docker pull

0

62

2

AWS ECR

0

57

2

FROM openjdk:17-jdk 현재 기준 dockerhub에 없습니다

1

98

2

Redis 볼륨 설정?

0

114

2

컨테이너의 IP

0

79

2

도커 이미지를 만들 때 application.yml

0

101

2

compose.yml 관리

0

86

2

ECR 리포지토리에 이미지가 3개가 보입니다.

0

76

2

액세스 키 등록하는 시점 관련 질문이 있습니다.

0

82

1

depends_on에 따른 컨테이너 실행 순서

0

75

2

실제 웹 서비스 배포 시 질문

0

80

2

도커 volume 질문

0

66

3

HTTPS로도 받고 싶으면 docker compose에 443도 쓰면 될까요?

0

71

2

sql 볼륨 폴더 지우면 데이터베이스 데이터 날라가는거 아닌가요?

0

71

2

39강 도커파일 빌드 경로 질문이 있습니다.

0

67

2

도커파일 copy

0

69

2

실무에서 docker compose up --build를 할 때

0

183

2

mysql_data 폴더 내부에 다른 파일이 있는데도 잘 되는 경우

0

83

2

도커 허브에서 postgres 버전 확인하는 법

0

127

2

보충 자료와도 관련된 추가 내용

1

81

1

현업에서 MySQL은 RDS와 도커 볼륨 중 어떤 걸 사용하나요?

0

108

2

노션 자료에 안 보이는 이미지가 있습니다

0

99

1

도커 허브에서의 latest가 가장 최신인 게 맞나요?

0

117

2

docker image ls 실행 시 나오는 내용이 다릅니다

0

86

2