docker重启后,mysql自建的数据库就消失,重启容器后又显示出来,这是怎么回事?

我用的win10环境,运行容器时,挂载了mysql的一些目录到本地磁盘,代码如下:

#拉取容器
docker pull mysql:5.7.26

#运行容器
docker run ^
--name mysql ^
--restart always ^    #我这里明明设置了,退出后总是重启
-p 127.0.0.1:3306:3306 ^
-e MYSQL_ROOT_PASSWORD=#Dsf135246 ^
-v "D:/workspace/Hyper-V/External hard disks/mysql/conf":/etc/mysql/conf.d ^
-v "D:/workspace/Hyper-V/External hard disks/mysql/logs":/logs ^
-v "D:/workspace/Hyper-V/External hard disks/mysql/data":/var/lib/mysql ^
-d ^
mysql:5.7.26

这是在本地建立的挂载目录:
图片说明

生成mysql容器后,我创建了一个数据,和一个表(我用的sqlyog数据库管理工具),到这里一切都很正常:

图片说明

但是,当我重启docker后,问题来了:

图片说明

挂载的磁盘,容器运行状态,都是正常的:

图片说明

可是我自己建的数据库:springcloud,在sqlyog中显示不出来:
图片说明

于是我重启容器,库和表又重新显示出来了:

图片说明

我的电脑重启是常有的事,所以docker也会跟着重启,我不想每次重启电脑,或docker后都要重启一下mysql容器,请问这是怎么回事?我该如何解决?

qq_23133409
小乙shine 我进入容器看了下,docker重启后,docker run -v指定的挂载目录,没有加进来,只有重新 docker restart <imageID>后才再次挂载进来,这到底是是怎么回事?
大约一年之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问