在 Linux 中启动时自动启动 Docker 容器的 2 种方法

这篇具有很好参考价值的文章主要介绍了在 Linux 中启动时自动启动 Docker 容器的 2 种方法。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

Docker 是一种流行的容器化平台,允许开发人员将应用程序及其依赖项打包成一个独立的容器,以便在不同环境中运行。在 Linux 系统中,我们可以通过配置来实现在系统启动时自动启动 Docker 容器。本文将详细介绍两种方法,以便您了解如何在 Linux 中实现自动启动 Docker 容器。

方法 1:使用 Systemd 服务

Systemd 是一种用于管理 Linux 启动过程和系统服务的系统和服务管理器。我们可以使用 Systemd 来创建一个服务单元,以在系统启动时自动启动 Docker 容器。以下是实现该方法的步骤:

步骤 1:创建 Systemd 服务单元文件

在 Linux 中启动时自动启动 Docker 容器的 2 种方法

  1. 打开终端并使用 root 或 sudo 权限创建一个新的服务单元文件,例如 docker-container.service
sudo nano /etc/systemd/system/docker-container.service
  1. 在文件中添加以下内容:
[Unit]
Description=Docker Container
Requires=docker.service
After=docker.service

[Service]
Restart=always
ExecStart=/usr/bin/docker start -a <container_name>
ExecStop=/usr/bin/docker stop <container_name>

[Install]
WantedBy=multi-user.target

在上述内容中,将 <container_name> 替换为您要自动启动的 Docker 容器的名称。

  1. 保存并关闭文件。

步骤 2:启用和启动 Systemd 服务

  1. 启用刚刚创建的 Systemd 服务:
sudo systemctl enable docker-container.service

这将使服务在系统启动时自动启用。

  1. 启动 Systemd 服务:
sudo systemctl start docker-container.service

Docker 容器将被启动,并且将在系统启动时自动运行。

现在,您已经成功创建了一个 Systemd 服务,使得 Docker 容器可以在 Linux 系统启动时自动启动。

方法 2:使用 cron 作业

cron 是 Linux 中的一个定时任务管理工具,我们可以使用它来设置一个定时任务,在系统启动时自动启动 Docker 容器。

在 Linux 中启动时自动启动 Docker 容器的 2 种方法

以下是实现该方法的步骤:

步骤 1:创建 cron 作业文件

  1. 打开终端并使用 root 或 sudo 权限创建一个新的 cron 作业文件,例如 docker-container.cron
sudo nano /etc/cron.d/docker-container.cron
  1. 在文件中添加以下内容:
@reboot root /usr/bin/docker start -a <container_name>

在上述内容中,将 <container_name> 替换为您要自动启动的 Docker 容器的名称。

  1. 保存并关闭文件。

步骤 2:重新加载 cron 作业

  1. 重新加载 cron 作业,以使新的定时任务生效:
sudo systemctl restart cron

cron 服务将重新加载,并在系统启动时自动启动 Docker 容器。

现在,您已经成功设置了一个 cron 作业,使得 Docker 容器可以在 Linux 系统启动时自动启动。

总结

在本文中,我们介绍了两种在 Linux 中实现自动启动 Docker 容器的方法:使用 Systemd 服务和使用 cron 作业。通过使用 Systemd 服务,我们可以创建一个服务单元,将 Docker 容器的启动和停止命令包含在其中,并在系统启动时自动启用和启动该服务单元。另外,使用 cron 作业可以设置一个定时任务,在系统启动时运行 Docker 容器的启动命令。

这两种方法都提供了自动化的方式来管理 Docker 容器的启动,并确保在系统重启后容器能够正常运行。您可以根据自己的需求和喜好选择适合您的方法。

无论您选择哪种方法,请确保在配置和使用 Docker 容器时遵循最佳实践和安全准则。这包括定期更新 Docker 和相关组件,保持系统的安全性和稳定性。文章来源地址https://www.toymoban.com/news/detail-484117.html

到了这里,关于在 Linux 中启动时自动启动 Docker 容器的 2 种方法的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Docker服务重启后让容器自动启动 | restart参数

    问题:服务器断电之后,docker服务挂掉了,需要重启docker,但是我们重启 docker 后,容器也就停止了,不会跟随 docker 启动而启动。那么如果想在docker服务重启之后让容器自动启动,该怎么操作呢? 1.容器还没有创建,在运行容器的时候加入 –restart=always 参数 2.容器已经运行

    2024年02月10日
    浏览(39)
  • docker容器设置和取消自启动的方法

    命令 说明 docker inspect 容器名称 | grep \\\"RestartPolicy\\\" -A 3 查看指定容器的自启动配置 no:不自动重启 on-failure:容器错误退出则自动重启 always:容器停止则自动重启,手动停止后将在docker守护程序重启后自动重启 unless-stopped:除了当容器停止(手动或其他方式)时,即使在Dock

    2024年02月11日
    浏览(44)
  • VM中Linux虚拟机IP地址总是自动变化的一种解决方法

    一开始使用Xshell远程连接虚拟机中的CentOS 7.9系统时,在重启系统后主机地址总是变化,第一次是192.168.136.134,第二次变成192.168.136.135,,,,,这样非常麻烦,每次都要去修改会话属性或者新建会话,在进行以下操作后解决上述问题: 首先,分别使用ip a和ifconfig两个命令显

    2024年02月15日
    浏览(33)
  • 启动docker容器的几种方法和注意事项(docker-compose,dockerfile)

    注意使用挂载命令volumes的时候,类似文件挂载可以这样写 表示宿主机docker-compose.yml当前目录下的/target/poi.jar文件挂载到容器默认目录app下 (如果是通过命令docker run -d -p 8088:8088 -v ./target/poi.jar:./app/,这样启动容器有两个报错,第一个是这样必须写绝对路径,不能写相对路径

    2024年02月11日
    浏览(37)
  • 记一次线上mysql出错:由于docker自动拉取最新mysql镜像导致mysql容器无法启动

    我随便写写,你们随便看看 环境背景:在docker中部署mysql镜像,通过portainer管理docker容器 简单说下过程:docker里mysql的时区没有设置,导致相差8小时,通过增加TZ=Asiz/Shanghai环境变量,然后重启容器来生效。结果重启的时候始终无法启动起来,后来发现是自动升级了mysql镜像版

    2024年02月07日
    浏览(39)
  • docker中mysql容器自动停止原因及解决方法

     第一步:查询已被停止的mysql docker ps -a  第二步:查询日志 dmesg | grep mysql 得出原因:mysql使用的内存过多,导致系统杀死了对应的进程(本服务器内存为1G) 第三步:重启mysql 依据 docker ps -a 能查出容器id 启动命令: docker start 容器id 第四步:mysql启动后设置限制内存 在宿主

    2023年04月08日
    浏览(29)
  • 深度linux社区版 20.8 安装 nvidia-docker,启动Stable Diffusion WebUI docker 容器

    以下为失败的记录,成功方法直接跳到末尾。  说明: 深度apt 源中无法直接安装nvidia-docker  github地址: GitHub - NVIDIA/nvidia-docker: Build and run Docker containers leveraging NVIDIA GPUs 下载最新release https://github.com/NVIDIA/nvidia-docker/archive/refs/tags/v2.13.0.tar.gz 使用国内源 新建文件:ubuntu20.04

    2024年02月16日
    浏览(31)
  • 解决 Win10 Docker Desktop 启动慢的3大方法,让你的容器运行速度飞起!

    在使用 Win10 Docker Desktop 运行容器时,有时会遇到启动很慢的问题。本文将详细介绍这个问题产生的原因,并提供相应的解决方法。通过实例演示,帮助读者更好地解决这个问题。 1. 问题原因分析 Docker Desktop 启动慢的原因主要有以下几个方面: 1.1 硬件配置不足 如果你的硬件

    2024年02月01日
    浏览(49)
  • 【Docker】深入理解Docker:一种革新性的容器技术

    前言   Docker 是一个 开源的应用容器引擎 ,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的 Linux或Windows 操作系统的机器上,也可以实现虚拟化,容器是完全使用沙箱机制,相互之间不会有任何接口。 📕作者简介: 热爱跑步的恒川 ,致

    2024年02月05日
    浏览(33)
  • Linux中启动Docker容器报错:Error response from daemon driver failed programming external

    在启动Docker的容器时,会出现报错: Error response from daemon: driver failed programming external connectivity on endpoint XXX(端口映射或启动容器时报错) 如下: 原因 : 在我们启动了Docker后,我们再对防火墙firewalld进行操作,就会发生上述报错 , 详细原因:docker服务启动时定义的自定义

    2024年02月16日
    浏览(39)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包