Docker: MySQL 컨테이너에 데이터 커밋
MySQL 컨테이너 이미지에 데이터를 커밋하려고 할 때 다음이 미치는 영향을 이해하는 것이 중요합니다. 데이터 볼륨.
공식 MySQL Docker 이미지는 데이터 볼륨을 사용하여 데이터를 저장합니다. 이는 컨테이너 수명 이후에도 데이터 지속성을 허용하지만 커밋된 이미지에 데이터가 포함되지 않는다는 의미이기도 합니다.
MySQL과 함께 이미지에 데이터를 커밋하려면 볼륨 없이 사용자 지정 기본 이미지를 생성하세요. 예를 들어 다음 Dockerfile을 사용하여 MySQL 이미지를 기반으로 새 이미지를 생성합니다.
FROM mysql:latest RUN rm -rf /var/lib/mysql/ CMD ["mysqld"]
그런 다음 사용자 지정 이미지를 빌드합니다.
docker build -t my-custom-mysql-image .
이 사용자 지정 기본 이미지를 사용하면 다음을 수행할 수 있습니다. 이전처럼 컨테이너를 만들고 데이터를 가져옵니다.
docker run --name my-mysql-container -e MYSQL_ROOT_PASSWORD=secret -d my-custom-mysql-image docker exec -it my-mysql-container bash mysql -uroot -psecret -e 'create database liferay_psat1;' mysql -uroot -psecret liferay_psat1 < /mnt/liferay_sql_dump.sql
이제 컨테이너를 새 이미지로 커밋하면:
docker commit -m "Imported liferay sql dump" my-mysql-container my-custom-mysql-image:v1
가져온 데이터가 커밋된 이미지에 포함됩니다. 해당 이미지로 새 컨테이너를 시작할 때 사용할 수 있습니다.
위 내용은 MySQL Docker 컨테이너에 데이터를 커밋하고 보존하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!