Docker Desktop启动后容器自启动关闭指南

 更新时间:2026年06月04日 08:44:02   作者:一勺菠萝丶  
在使用 Docker Desktop 的时候,有些容器会在每次启动 Docker Desktop 后自动启动,但是这个服务我并不是每次都需要用,所以希望它不要跟随 Docker Desktop 自动启动,而是在需要的时候手动启动,所以本文给大家介绍了Docker Desktop启动后容器自启动关闭方法

一、问题现象

在使用 Docker Desktop 的时候,有些容器会在每次启动 Docker Desktop 后自动启动。

比如我本地有一个 JRebel License Server 容器:

bash jrebel-license-active-server

每次打开 Docker Desktop,它都会自动运行。

但是这个服务我并不是每次都需要用,所以希望它不要跟随 Docker Desktop 自动启动,而是在需要的时候手动启动。

二、为什么容器会自动启动?

Docker 容器是否会自动启动,主要取决于它的 Restart Policy,也就是容器的重启策略。

常见的重启策略有下面几种:

策略含义
no不自动重启,Docker 启动时也不会自动启动容器
alwaysDocker 启动后自动启动容器,容器退出后也会自动重启
unless-stopped除非手动停止,否则 Docker 启动后会自动启动容器
on-failure只有容器异常退出时才自动重启

如果一个容器每次 Docker Desktop 启动后都会自动启动,大概率是因为它的重启策略被设置成了:

bash --restart=always

或者:

bash --restart=unless-stopped

三、查看当前容器的重启策略

可以使用下面的命令查看容器当前的重启策略:

bash docker inspect 容器名 --format ‘{{.HostConfig.RestartPolicy.Name}}'

例如查看 jrebel-license-active-server:

bash docker inspect jrebel-license-active-server --format ‘{{.HostConfig.RestartPolicy.Name}}'

如果输出是:

bash always

或者:

bash unless-stopped

说明这个容器会有自动启动的行为。

四、关闭容器自动启动

使用下面的命令,把容器的重启策略改成 no:

bash docker update --restart=no 容器名

例如:

bash docker update --restart=no jrebel-license-active-server

执行成功后,终端一般会返回容器名称:

bash jrebel-license-active-server

这就表示修改成功了。

五、验证是否修改成功

再次执行查看命令:

bash docker inspect jrebel-license-active-server --format ‘{{.HostConfig.RestartPolicy.Name}}'

如果输出是:

bash no

说明已经设置成功。

以后启动 Docker Desktop 时,这个容器就不会自动启动了。

六、以后需要用的时候如何手动启动?

关闭自动启动之后,并不是删除容器,只是让它不再跟随 Docker Desktop 自动启动。

需要用的时候,可以手动启动:

bash docker start jrebel-license-active-server

如果要停止它:

bash docker stop jrebel-license-active-server

七、Docker Desktop 图形界面怎么操作?

也可以在 Docker Desktop 里手动操作:

  1. 打开 Docker Desktop
  2. 进入左侧 Containers
  3. 找到对应容器
  4. 点击右侧蓝色三角形按钮启动
  5. 点击停止按钮即可停止容器

不过修改“是否自动启动”这种配置,用命令行更直接。

八、常用命令整理

查看所有容器

bash docker ps -a

查看正在运行的容器

bash docker ps

查看容器重启策略

bash docker inspect 容器名 --format ‘{{.HostConfig.RestartPolicy.Name}}'

关闭容器自启动

bash docker update --restart=no 容器名

设置容器自动启动

如果以后想恢复自动启动,可以执行:

bash docker update --restart=always 容器名

或者:

bash docker update --restart=unless-stopped 容器名

手动启动容器

bash docker start 容器名

手动停止容器

bash docker stop 容器名

九、多个容器批量关闭自启动

如果有多个容器都不想自动启动,可以分别执行:

bash docker update --restart=no jenkins docker update --restart=no redis-7.2 docker update --restart=no mysql-8.0.31 docker update --restart=no jrebel-license-active-server

不过需要注意:

像 MySQL、Redis、Jenkins 这种开发常用服务,如果经常使用,可以保留自动启动。

像 JRebel License Server 这种不是每次都需要用的服务,可以设置成不自动启动,需要时再手动启动。

十、实际案例

我这次遇到的问题是:

Docker Desktop 里有一个容器:

bash jrebel-license-active-server

每次启动 Docker Desktop 时,它可能会自动启动。

我执行了下面的命令:

bash docker update --restart=no jrebel-license-active-server

终端返回:

bash jrebel-license-active-server

说明修改成功。

然后可以用下面命令再次确认:

bash docker inspect jrebel-license-active-server --format ‘{{.HostConfig.RestartPolicy.Name}}'

如果结果是:

bash no

就表示以后 Docker Desktop 启动时,这个容器不会自动启动了。

十一、总结

Docker 容器是否会自动启动,主要看它的重启策略。

如果不希望容器跟随 Docker Desktop 自动启动,执行:

bash docker update --restart=no 容器名

如果想确认是否成功,执行:

bash docker inspect 容器名 --format ‘{{.HostConfig.RestartPolicy.Name}}'

输出为:

bash no

就说明设置成功。

以后需要使用该容器时,再手动启动即可:

bash docker start 容器名

到此这篇关于Docker Desktop启动后容器自启动关闭指南的文章就介绍到这了,更多相关Docker Desktop容器自启动关闭内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • Dockerfile指令与基本结构的讲解

    Dockerfile指令与基本结构的讲解

    今天小编就为大家分享一篇关于Dockerfile指令与基本结构的讲解,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧
    2019-03-03
  • Docker搭建MySQL双主复制详细教程

    Docker搭建MySQL双主复制详细教程

    Docker MySQL 双主复制是一种数据库高可用和数据冗余的技术,它利用 Docker 容器化的优势,在两个或多台MySQL服务器上同时运行并维护数据库副本,这两个主服务器可以互相同步数据更新,本文给大家介绍了Docker搭建MySQL双主复制详细教程,需要的朋友可以参考下
    2024-07-07
  • 用docker运行postgreSQL的方法步骤

    用docker运行postgreSQL的方法步骤

    这篇文章主要介绍了用docker运行postgreSQL的方法步骤,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-11-11
  • 解决Docker报错:“docker build“ requires exactly 1 argument.

    解决Docker报错:“docker build“ requires exactly&nb

    这篇文章主要介绍了解决Docker报错:“docker build“ requires exactly 1 argument.具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2023-12-12
  • Windows10系统下Docker默认存储位置更改方案

    Windows10系统下Docker默认存储位置更改方案

    这篇文章主要给大家介绍了关于Windows10系统下Docker默认存储位置更改方案的相关资料,在Docker中存储路径是一个重要的话题,文中通过图文介绍的非常详细,需要的朋友可以参考下
    2023-08-08
  • Docker安装部署Neo4j的保姆级教程

    Docker安装部署Neo4j的保姆级教程

    本文主要介绍了Docker安装部署Neo4j的保姆级教程,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-08-08
  • docker compose 使用教程

    docker compose 使用教程

    这篇文章主要介绍了docker compose 使用教程,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-07-07
  • Docker 部署HAProxy v2.2.29 并暴露指标接口的问题解决

    Docker 部署HAProxy v2.2.29 并暴露指标接口的问题解决

    haproxy提供高可用性、负载均衡以及基于TCP(第四层)和HTTP(第七层)应用的代理,支持虚拟主机,它是免费、快速并且可靠的一种解决方案,这篇文章主要介绍了Docker 部署HAProxy v2.2.29 并暴露指标接口,需要的朋友可以参考下
    2023-04-04
  • Docker Compose一键ELK部署的方法实现

    Docker Compose一键ELK部署的方法实现

    这篇文章主要介绍了Docker Compose一键ELK部署的方法实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2021-01-01
  • Docker+Jenkins+Gitee自动化部署maven项目的实现

    Docker+Jenkins+Gitee自动化部署maven项目的实现

    本文主要介绍了Docker+Jenkins+Gitee自动化部署maven项目的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-06-06

最新评论