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

举报
wljslmz 发表于 2023/05/30 16:05:41 2023/05/30
【摘要】 Docker 是一种流行的容器化平台,允许开发人员将应用程序及其依赖项打包成一个独立的容器,以便在不同环境中运行。在 Linux 系统中,我们可以通过配置来实现在系统启动时自动启动 Docker 容器。本文将详细介绍两种方法,以便您了解如何在 Linux 中实现自动启动 Docker 容器。 方法 1:使用 Systemd 服务Systemd 是一种用于管理 Linux 启动过程和系统服务的...

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

方法 1:使用 Systemd 服务

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

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

  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 容器。

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

步骤 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 和相关组件,保持系统的安全性和稳定性。

【版权声明】本文为华为云社区用户原创内容,未经允许不得转载,如需转载请自行联系原作者进行授权。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。