inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

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

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

호스트경로/mysql_data경로 질문

510

작성자 없음

작성한 질문수 0

0

안녕하세요

mysql_data는 어떤 역할하고 있는지 궁금합니다.

mysql_data를 없이 docker에 mysql를 넣었는데 실행이 중단되고 아래와 같은 오류가 나와서 이유를 알고싶습니다

image.png

그리고 항상 docker에 mysql에 호스트 내부에 파일을 저장할때 새로운 my_data의 이름이 아니여도 다른 파일경로를 지정을 해줘야하는건가요?

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

답변 3

0

JSCODE 박재성

안녕하세요!

 

문제의 원인을 하나씩 디버깅 하기 위해 소통이 필요할 것 같습니다!

아래 링크로 카톡 한 번 주실 수 있을까요~??

 

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

0

wxogud3377

한가지 더 질문이 있습니다. mysql_data파일안에 mysql를 만들었는데 윈도우에서는 ls를(7:31분) 해도 해당 파일(my_data)이 보이지가 않은데 방법이 있을까요??

0

인프런 AI 인턴

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

wxogud3377님의 질문은 Docker에서 MySQL 컨테이너를 실행할 때 발생하는 데이터 저장 관련 문제에 대한 것 같습니다. Docker에서 MySQL을 사용할 때 mysql_data와 같이 볼륨을 지정하는 것은 데이터 지속성을 위한 일반적인 방법입니다. MySQL 컨테이너는 데이터를 저장하기 위해 내부에 /var/lib/mysql 경로를 사용하며, 컨테이너를 재시작하거나 삭제할 경우 데이터를 유지하기 위해서는 호스트 시스템의 경로나 볼륨을 이 경로에 마운트하는 것이 필수적입니다.

님이 공유해주신 에러 메시지 “the server’s designated data directory /var/lib/mysql has files in it and is unusable”는 이미 데이터 디렉토리에 파일이 존재하기 때문에 MySQL 서버가 정상적으로 초기화되지 않는 문제를 지적하고 있습니다. 이는 일반적으로 이전에 MySQL 컨테이너를 실행한 후 데이터가 남아 있는 경우 발생할 수 있습니다.

Docker에서 MySQL을 실행할 때 호스트의 경로를 지정하지 않으면, MySQL 컨테이너가 종료될 때 데이터가 함께 삭제되므로, 데이터를 유지하기 위해서는 반드시 볼륨을 사용해야 합니다. 이때, mysql_data와 같은 볼륨 이름이 아니어도 되며, 원하는 이름으로 지정하거나 호스트의 특정 경로를 지정할 수 있습니다.

데이터 저장 관련하여 추가적인 정보는 다음 질문과 답변에서 찾아볼 수 있습니다:
- 디렉토리를 만들고 -v 옵션 사용 시에서는 비슷한 상황에서 -v 옵션을 사용하여 Docker 컨테이너에 호스트의 디렉토리를 마운트하는 방법과 관련된 상황을 설명하고 있습니다.

도커 컨테이너에서 데이터 지속성을 보장하기 위해 볼륨을 사용하는 방범과 해당 도커 명령어 사용 시 발생할 수 있는 에러를 해결하는 방법에 대해 좀 더 자세히 알고 싶다면, 위 링크를 참고하시는 것을 추천드립니다.

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

EC2 터미널에서 docker pull

0

64

2

AWS ECR

0

58

2

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

1

100

2

Redis 볼륨 설정?

0

117

2

컨테이너의 IP

0

80

2

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

0

105

2

compose.yml 관리

0

88

2

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

0

77

2

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

0

83

1

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

0

76

2

실제 웹 서비스 배포 시 질문

0

80

2

도커 volume 질문

0

67

3

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

0

73

2

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

0

73

2

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

0

70

2

도커파일 copy

0

70

2

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

0

187

2

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

0

86

2

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

0

127

2

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

1

82

1

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

0

110

2

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

0

101

1

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

0

121

2

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

0

87

2