首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >docker run - autokill容器已经在使用了吗?

docker run - autokill容器已经在使用了吗?
EN

Stack Overflow用户
提问于 2020-10-29 01:58:34
回答 1查看 105关注 0票数 0

我跟随this guide在Docker中定制MySQL数据库,并在对挂载的sql文件进行调整后多次运行此命令:

代码语言:javascript
复制
docker run -d -p 3306:3306 --name my-mysql -v /Users/pneedham/dev/docker-testing/sql-scripts:/docker-entrypoint-initdb.d/ -e MYSQL_ROOT_PASSWORD=supersecret -e MYSQL_DATABASE=company mysql

在该命令的所有后续执行中,我会看到一个类似以下的错误:

代码语言:javascript
复制
docker: Error response from daemon: Conflict. The container name "/my-mysql" is already in use by container "9dc103de93b7ad0166bb359645c12d49e0aa4a3f2330b5980e455cec24843663". You have to remove (or rename) that container to be able to reuse that name.
See 'docker run --help'.

我想知道的是,docker run命令是否可以修改为自动杀死前一个容器(如果它存在)?或者是否存在具有相同所需结果的不同命令。

如果我要创建一个shell脚本来完成此任务,我将首先运行docker ps -aqf "name=mysql",如果有任何输出,则通过运行docker rm -f $containerID使用生成的容器ID。然后运行原始命令。

EN

回答 1

Stack Overflow用户

发布于 2020-10-29 02:19:54

docker run命令有一个--rm参数,该参数在运行完成后删除容器。请参阅docs。因此,只需将命令更改为

代码语言:javascript
复制
docker run --rm -d -p 3306:3306 --name my-mysql -v /Users/pneedham/dev/docker-testing/sql-scripts:/docker-entrypoint-initdb.d/ -e MYSQL_ROOT_PASSWORD=supersecret -e MYSQL_DATABASE=company mysql
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/64578696

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档