집 >데이터 베이스 >MySQL 튜토리얼 >Docker 컨테이너 내부의 스키마를 사용하여 MySQL 데이터베이스를 초기화하는 방법은 무엇입니까?
Docker 컨테이너 내에서 스키마를 사용하여 MySQL 데이터베이스를 초기화하는 것은 어려울 수 있습니다. 이 문제를 해결하는 솔루션은 다음과 같습니다.
1. MySQL 스키마 덤프
다음 명령을 사용하여 MySQL 스키마를 파일에 덤프합니다.
mysqldump -h <your_mysql_host> -u <user_name> -p --no-data <schema_name> > schema.sql
2. Dockerfile에 스키마 파일 추가
Dockerfile에서 ADD 명령을 사용하여 /docker-entrypoint-initdb.d 디렉터리에 스키마 파일을 추가합니다. 컨테이너의 docker-entrypoint.sh 스크립트는 데이터베이스에 대해 이 디렉터리에 있는 모든 .sql 파일을 실행합니다.
샘플 Dockerfile:
FROM mysql:5.7.15 MAINTAINER me ENV MYSQL_DATABASE=<schema_name> \ MYSQL_ROOT_PASSWORD=<password> ADD schema.sql /docker-entrypoint-initdb.d EXPOSE 3306
3. Docker 컨테이너 빌드 및 실행
Dockerfile이 수정되면 컨테이너를 빌드하고 실행합니다.
docker-compose build docker-compose up
4. 추가 참고 사항
이러한 단계를 따르면 Docker 컨테이너 내의 스키마를 사용하여 MySQL 데이터베이스를 성공적으로 초기화하고 CMD가 제대로 실행되지 않는 문제를 해결할 수 있습니다.
위 내용은 Docker 컨테이너 내부의 스키마를 사용하여 MySQL 데이터베이스를 초기화하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!