docker部署mysql的问题:带有表及数据的mysql容器,打包成镜像迁移之后,数据丢失

这里给出一个解决方法:
思想:在创建镜像的时候就要修改数据存放的位置。然后启动它。然后正常的建立数据库,commit。这样就好啦!!!
创建镜像,编写Dockerfile:

FROM mysql:latest

RUN cp -r /var/lib/mysql /var/lib/mysql-no-volume

CMD ["--datadir", "/var/lib/mysql-no-volume"]

然后构建:

docker build . -t my-mysql
docker run -p 3306:3306 -e MYSQL_ROOT_PASSWORD=root -it my-mysql