如何保存我的数据库在Docker容器重新启动mysql
我在Docker中运行mysql(Docker for Windows 1.12.6,不是docker工具箱)
docker run --name mysqldb -v /d/databases/mysql:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=my-secret-pw -d -p 3306:3306 mysql:5.7
当我第一次做完所有的事情都很棒。 如何将主机上的mysql和数据库目录的docker容器作为docker容器卷。
但是,当我尝试启动与命令docker start mysqldb
启动容器阿甘docker start mysqldb
我有错误从守护进程的错误响应:mkdir / d:文件存在错误:无法启动容器:mysqldb
我究竟做错了什么? 有没有什么办法来保存我的数据库之间的容器和docker重新启动?
UPD这是出docker ps -a
3b5b6cb91107 mysql:5.7 "docker-entrypoint.sh" 9 hours ago Up 15 seconds 0.0.0.0:3306->3306/tcp mysqldb
容器已经启动,但是卷/var/lib/mysql
不再被挂载到主机目录。
"Mounts": [ { "Source": "/d/databases/mysql", "Destination": "/var/lib/mysql", "Mode": "", "RW": true, "Propagation": "rprivate" } ],
这有点奇怪,因为我用我的数据库容器执行相同的命令,它每次都工作正常。
docker run --name main-database -e DB_HOST=asas -e DB_PORT=testing -p 3306 -v /home/mahesh/projects/django/tmp/mysql:/var/lib/mysql main/database
你可以请上传的输出:
docker ps -a
请检查容器是否处于退出状态。
更新 :我能看到的是你的容器现在
我认为你应该重新开始:
请使用docker stop container-id
然后将其删除docker rm container-id
如果存在docker rmi image-id
则删除映像
现在用--rm
标志运行你的命令
docker run --rm --name mysqldb -v /somedir_in_your_home/mysql:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=my-secret-pw -d -p 3306:3306 mysql:5.7
- 与Zuul和Eureka在Docker Swarm集群上的弹簧微服务没有反应
- “docker pull”从私人gitlabregistry中返回`denied:access forbidden`
- 如何将Docker PHP容器连接到MySql容器?
- dokku错误:无法find应用程序的实体
- tar cv –files-from / dev / null | docker导入 – 从头开始“的工作?
- 使用本地Docker容器的承担angular色
- 在Linux上的Azure Web App上安装自定义Docker jenkins映像会丢失保存的configuration数据
- docker工人在停车后启动一个集装箱
- 访问除ssh以外的Docker容器