docker - 如何在 docker(工具箱)中启动现有的 mysql 容器?
问题描述
我有一个容器(我正在使用这个容器https://hub.docker.com/_/mysql/),它之前已经启动,ID 为 5f96e9570d1b1475a888d7a615acdd9a7715c1ed6f0c40900f2e9c1ab485c7cf,但现在我该如何重新启动它?我试过这个命令但不起作用
$ docker run --name mysql -e MYSQL_ROOT_PASSWORD=*Abcd1234 -d mysql:5.7
D:\CWindow10\Docker Toolbox\docker.exe: Error response from daemon: Conflict. The container name "/mysql" is already in use by container "5f96e9570d1b1475a888d7a615acdd9a7715c1ed6f0c40900f2e9c1ab485c7cf". You have to remove (or rename) that container to be able to reuse that name.
See 'D:\CWindow10\Docker Toolbox\docker.exe run --help'.
如果我删除容器并重新输入命令,旧数据是否仍存在于新容器中?
解决方案
要重新启动现有容器,只需运行docker start <container_name_or_id>
.
关于数据:docker 使用卷的概念来放置数据。对于 mysql 映像,docker hub 站点上有一个“存储数据的位置”部分。如果你不手动声明图像应该去哪里,docker 会为你创建一个。如果您希望保留数据,最简单的方法是创建一个文件夹并告诉docker run
命令映射该卷。这样,如果你扔掉你的容器,你仍然可以使用它。
推荐阅读
- selenium - 我无法使用 Selenium 和 Java 处理引导模式
- c# - 如何使用表达式树编写 List All 方法?
- scala - 编程:Scala 从一副牌中抽出一张牌,直到牌空
- c - 如何按顺序将元素从一个链表移动到另一个链表
- python - 在 Python 中向现有字典添加新键值
- angular - 订阅可管道运算符时的 RxJS 类型问题
- python - 如何使用 OpenCV、多线程、队列在 python 中同时运行多个视频?
- javascript - 如何使用 CORS 访问外部图像 url 目录?
- hyperledger-fabric - 无法在最新版本的 Fabric 第一网络中启动 CA 服务器
- windows - sc.exe 没有返回输出