【Linux docker 容器】关于想要让虚拟机在开机时候也docker自己启动,容器也自己启动,省去要自己开docker和容器

  1. 确认 Docker 服务状态

    首先,你需要确保 Docker 服务已经在虚拟机上安装并正确配置。你可以使用如下命令来检查 Docker 服务的状态:

     systemctl status docker.service

    如果服务没有运行,你可以使用以下命令启动它:

     systemctl start docker.service

  2. 设置 Docker 开机自启动

    使用 systemctl enable 命令来设置 Docker 服务在虚拟机开机时自动启动:

     sudo systemctl enable docker.service

二、设置 Docker 容器开机自动启动

  1. 创建或获取容器 ID/名称

    确保你已经有一个或多个 Docker 容器,并且知道它们的 ID 或名称。如果你还没有创建容器,你可以使用 docker run 命令来创建一个新容器。

  2. 如果你是在创建容器时就想设置自动重启策略,你可以在 docker run 命令中添加 --restart=always 选项。

    docker run --restart=always (容器id或者容器名)

  3. 设置容器自动重启策略

    使用 docker update 命令来设置容器的自动重启策略。你可以将重启策略设置为 always,这样容器就会在 Docker 服务启动时自动启动,并且在容器退出时也会自动重启。

    docker update --restart=always 容器ID或名称

    如果你不想要了就把always改成no就行

    附上容器提供的其他策略:

    Docker提供了几种重启策略,以帮助管理和维护容器的运行状态。以下是关于always、unless-stopped、on-failure这三种重启策略的详细介绍:

    看下策略之间先看下面的注意:

  4. always策略

    行为:无论容器的退出原因是什么,Docker都会自动重启该容器。

    适用场景:这个策略适用于需要持续运行的关键服务,如Web服务器、数据库、消息队列等。它确保这些服务在发生任何故障时都能自动恢复,从而提高系统的可靠性和可用性。

  5. unless-stopped策略

    行为:只要容器没有被手动停止,Docker就会自动重启它。如果容器被手动停止了,则不会自动重启,除非再次手动启动。

    适用场景:这个策略提供了更灵活的重启选项。它适用于那些需要在维护、升级或调试期间暂时停止的服务,但又不希望这些服务在停止后自动重启的情况。

  6. no:默认策略,在容器退出时不重启容器。也就是说,无论容器是正常退出还是异常退出,Docker 都不会自动重启它。
  7. on-failure:在容器非正常退出时(即退出状态码非0)才会重启容器。Docker 会一直重启容器,直到容器成功运行(退出状态码为0)或者达到重启次数限制(如果指定了的话)。如果没有指定重启次数,则会一直重启。
  8. on-failure:N:在容器非正常退出时重启容器,但最多重启N次。这里的N是一个正整数,表示Docker在容器退出状态码非0时会尝试重启容器的最大次数。
  9. 三、验证设置

  1. 重启虚拟机: 在设置了 Docker 服务和容器的自动启动后,你可以重启虚拟机来验证设置是否生效。

  2. 检查 Docker 服务和容器状态: 在虚拟机重启后,使用 systemctl status docker.service 命令来检查 Docker 服务的状态,确保它已经启动。然后,使用 docker ps 命令来检查容器是否已经自动启动。

你可以通过

 docker inspect 容器id或者名

找到下面这个名字,就能看到里面是什么策略了

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/897660.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

前端系统测试(单元、集成、数据|性能|回归)

有关前端测试的面试题 系统测试 首先,功能测试部分。根据资料,单元测试是验证最小可测试单元的正确性,比如函数或组件。都提到了单元测试的重要性,强调其在开发早期发现问题,并通过自动化提高效率。需要整合我搜索到的资料中的观点,比如单元测试的方法(接口测试、路径覆…

linux 命令 ls

ls 是 Linux 系统中用于列出目录内容的核心命令,几乎所有日常操作都会用到。以下是其详细用法和常见场景说明 1. 基础语法 ls [选项] [目录/文件] 不指定目录时,默认列出当前目录的内容。 可以指定文件或目录路径,支持通配符(如…

CI/CD—GitLab部署

GitLab简介: GitLab 是一个用于代码托管和软件开发协作的平台,在全球开发者社区及企业中应用广泛,以下是对它的详细介绍: 主要功能 代码托管:提供了基于 Git 的代码仓库管理功能,支持创建、克隆、推送、…

ubuntu软件

视频软件,大部分的编码都能适应 sudo apt install vlc图片软件 sudo apt install gwenview截图软件 sudo apt install flameshot设置快捷键 flameshot flameshot gui -p /home/cyun/Pictures/flameshot也就是把它保存到一个自定义的路径 菜单更换 sudo apt r…

Easysearch 使用 AWS S3 进行快照备份与还原:完整指南及常见错误排查

Easysearch 可以使用 AWS S3 作为远程存储库,进行索引的快照(Snapshot)备份和恢复。同时,Easysearch 内置了 S3 插件,无需额外安装。以下是完整的配置和操作步骤。 1. 在 AWS S3 上创建存储桶 登录 AWS 控制台&#x…

【系统架构设计师】性能评估

目录 1. 说明2. 基准测试程序3. Web服务器的性能评估4. 系统监视5. 例题5.1 例题1 1. 说明 1.性能评估是为了一个目的,按照一定的步骤,选用一定的度量项目,通过建模和实现,对一个系统的性能进行各项检测,对测试结果做…

动态规划-第2篇

前言:在上一篇文章中,我们了解了动态规划的基本概念和解决问题的基本思路。通过分解问题、存储子问题的解,动态规划为我们提供了高效的解决方案。然而,动态规划并不是一成不变的,它有很多不同的技巧和变种,…

基于Redis实现限流

限流尽可能在满足需求的情况下越简单越好! 1、基于Redsi的increment方法实现固定窗口限流 Redis的increment方法保证并发线程安全窗口尽可能越小越好(太大可能某一小段时间就打满请求剩下的都拿不到令牌了)这个原理其实就是用当前时间戳然后除窗口大小 在这个窗口大…

【工具使用】IDEA 社区版如何创建 Spring Boot 项目(详细教程)

IDEA 社区版如何创建 Spring Boot 项目(详细教程) Spring Boot 以其简洁、高效的特性,成为 Java 开发的主流框架之一。虽然 IntelliJ IDEA 专业版提供了Spring Boot 项目向导,但 社区版(Community Edition&#xff09…

探索高性能AI识别和边缘计算 | NVIDIA Jetson Orin Nano 8GB 开发套件的全面测评

随着边缘计算和人工智能技术的迅速发展,性能强大的嵌入式AI开发板成为开发者和企业关注的焦点。NVIDIA近期推出的Jetson Orin Nano 8GB开发套件,凭借其40 TOPS算力、高效的Ampere架构GPU以及出色的边缘AI能力,引起了广泛关注。本文将从配置性…

紧急救援!MySQL数据库误删后的3种恢复方案

一、误删场景分类与恢复策略 ‌常见误操作场景‌: DROP TABLE 误删单表(高频事故)DELETE 误删数据(可通过事务回滚抢救)DROP DATABASE 删除整个库(需全量备份)服务器rm -rf(物理文件删除)‌恢复方案选择矩阵‌: 场景推荐方案时间窗口表结构删除(DROP)备份恢复 + B…

开源免费日志服务ELK Syack代替syslog

一、ELK Stack 采集 syslog 日志的主要方式 通常,ELK Stack 使用 Logstash 或者 Filebeat 来采集 syslog 日志。 Beats 通常更轻量级,适合作为代理部署在各个日志源服务器上,而 Logstash 则功能更强大,可以进行更复杂的日志处理和…

单片机设计暖脚器研究

标题:单片机设计暖脚器研究 内容:1.摘要 本文聚焦于基于单片机设计暖脚器的研究。背景方面,在寒冷季节,暖脚器能有效改善脚部寒冷状况,提升人们的舒适度,但传统暖脚器存在功能单一、温控不准确等问题。目的是设计一款智能、高效且…

蓝桥杯省赛真题C++B组2024-握手问题

一、题目 【问题描述】 小蓝组织了一场算法交流会议,总共有 50 人参加了本次会议。在会议上,大家进行了握手交流。按照惯例他们每个人都要与除自己以外的其他所有人进行一次握手(且仅有一次)。但有 7 个人,这 7 人彼此之间没有进行握手(但这…

C#+AForge 实现视频录制

C#AForge 实现视频录制 ​ 在C#中,使用AForge 库实现视频录制功能是一个比较直接的过程。AForge 是一个开源的.NET框架,提供了许多用于处理图像和视频的类库。 开发步骤 安装AForge库 ​ 首先,确保你的项目中已经安装了 AForge.Video和AFo…

PHP框架加载不上.env文件中的变量

以lumen5.5框架为例,根目录中bootstrap文件夹下的app.php文件中 (new Dotenv\Dotenv(__DIR__./../))->load(); 是读取所有.env中的文件的,这个是正常的,但是在代码中的任何位置或者在config目录下的databases.php里,代码如…

21.Linux 线程库的使用与封装

在linux内核中并没有线程的概念,只有轻量级进程LWP的概念,linux下的线程都是是由LWP进行模拟实现的。因此linux操作系统中不会提供线程的相关接口,只会提供轻量级线程的接口(如vfork,clone等)。但是在我们的…

Aliyun CTF 2025 web 复现

文章目录 ezoj打卡OKoffens1veFakejump server ezoj 进来一看是算法题,先做了试试看,gpt写了一个高效代码通过了 通过后没看见啥,根据页面底部提示去/source看到源代码,没啥思路,直接看wp吧,跟算法题没啥关系,关键是去…

《鸿蒙系统下AI模型训练加速:时间成本的深度剖析与优化策略》

在当今数字化浪潮中,鸿蒙系统凭借其独特的分布式架构与强大的生态潜力,为人工智能的发展注入了新的活力。随着AI应用在鸿蒙系统上的日益普及,如何有效降低模型训练的时间成本,成为了开发者与研究者们亟待攻克的关键课题。这不仅关…

Git使用(一)--如何在 Windows 上安装 Git:详细步骤指南

如果你想在 Windows 机器上安装 Git,可以按照以下详细指南进行操作。 第一步:下载 Git 可通过官网下载 适用于 Windows 的 Git 最新版本。 如果下载速度较慢,可以通过下面提供的百度网盘 链接下载安装包, https://git-scm.com/d…