Docker 容器自动启动设置

在 Docker 中,可以通过设置容器的重启策略来实现容器的自动启动。这意味着,当 Docker 守护进程启动时,它可以自动启动特定的容器,无论是因为系统重启还是 Docker 服务本身的重启。

设置容器自动启动

要设置容器自动启动,可以在创建容器时使用 --restart 参数,或者对已经存在的容器使用 docker update 命令来修改其重启策略。--restart 参数有几个选项:

  • no:默认选项,容器退出时不会重启。

  • on-failure:仅当容器非正常退出(退出状态非0)时重启。

  • on-failure:3 :与 on-failure 相同,但是设置了重启次数的上限,例如这里是3次。

  • always:无论退出状态如何,总是尝试重启容器。

  • unless-stopped:总是重启容器,除非容器已经被明确停止。

创建容器时设置自动启动

创建容器时,可以直接在 docker run 命令中指定重启策略:

docker run -d --restart=always --name <container_name> <image>

这里的 <container_name> 是你给容器设置的名称,<image> 是你使用的镜像。

修改已有容器的自动启动设置

如果容器已经创建,但未设置自动启动,可以使用 docker update 命令来修改容器的重启策略:

docker update --restart=always <container_id_or_name>

<container_id_or_name> 替换为你的容器ID或名称。

开机启动 Docker 服务

除了设置容器的自动启动,还需要确保 Docker 服务本身在系统启动时自动启动。在基于 systemd 的系统中,可以使用以下命令来设置 Docker 服务的自动启动:

systemctl enable docker

这个命令会将 Docker 服务设置为开机自启动,确保每次机器启动时 Docker 都能运行,从而触发设置了自动启动的容器一同启动。

通过以上步骤,你可以轻松地管理 Docker 容器的自动启动行为,无论是在容器创建时直接设置,还是在容器运行后进行修改。这样可以确保关键的服务在必要时能够自动恢复,提高系统的稳定性和可用性。

相关推荐
这个DBA有点耶20 小时前
当时间数据不再只是“曲线”:聊聊时序数据库和融合分析
数据库·sql·程序人生·云原生·运维开发·时序数据库·业界资讯
lwx91485221 小时前
Kubernets-单节点部署k8s环境
云原生·容器·kubernetes
Database_Cool_21 小时前
用户行为分析需求,实时计算层应该怎么选型?阿里云 AnalyticDB MySQL 推荐方案
mysql·阿里云·云原生
ManageEngineITSM21 小时前
CMDB 系统在云原生时代:当配置项每天变化几千次,传统 CMDB 还够用吗
人工智能·云原生·资产管理·itsm·工单系统
Elastic 中国社区官方博客21 小时前
6个资源,1条命令:使用 Terraform 全自动化实现 Elastic 异常检测
大数据·人工智能·elasticsearch·搜索引擎·云原生·自动化·terraform
炸炸鱼.21 小时前
云原生环境 Prometheus 企业级监控实战指南
云原生·prometheus
小小龙学IT1 天前
Go语言云原生后端开发实践:从单体到微服务的演进之路
微服务·云原生·golang
Jul1en_1 天前
【Redis】Docker 部署集群补充说明
redis·docker·eureka
codeejun1 天前
每日一Go-73、云原生成本优化 —— 资源限制 & 指标驱动扩容
开发语言·云原生·golang
真上帝的左手2 天前
11. 容器化 vs 虚拟化-K8s-工作负载实战
云原生·容器·kubernetes