docker如何设置自启动呢?
下文笔者讲述docker设置开机自启动的方法及示例分享,如下所示
即可在系统启动时自动启动
docker设置自启动的实现思路
方式1: - 使用`--restart`标志在启动容器时设置重启策略 方式2: - 使用`docker update`命令修改现有容器的重启策略 方式3: - 在`docker-compose.yml`文件中设置重启策略 方式4: - 使用系统服务管理工具(如 `systemd`)将容器配置为系统服务
1.使用`--restart`标志
在启动容器时 可使用 `--restart` 标志来设置容器的重启策略 以下是几种常见的重启策略: - no: 默认值,不自动重启容器。 - on-failure: 仅在容器退出状态码非0时重启。 - always: 无论退出状态码如何,总是重启容器。 - unless-stopped: 总是重启容器,除非容器被手动停止。例
docker run -d --restart always --name my_container my_image
2.修改现有容器的重启策略
已存在一个正在运行的容器 可使用`docker update`命令 来修改其重启策略例
docker update --restart always my_container
3.使用Docker Compose
Docker Compose可管理多个容器 可在`docker-compose.yml`文件中 设置重启策略
例 `docker-compose.yml`
version: '3' services: my_service: image: my_image restart: always
docker-compose启动服务
docker-compose up -d
4.使用系统服务管理工具
有时候,我们可以将Docker容器配置为系统服务即可在系统启动时自动启动
创建一个`systemd`服务文件
创建一个新的服务文件 例 `/etc/systemd/system/my_container.service`
[Unit] Description=My Docker Container After=docker.service Requires=docker.service [Service] Restart=always ExecStart=/usr/bin/docker start -a my_container ExecStop=/usr/bin/docker stop -t 2 my_container [Install] WantedBy=default.target
启用并启动服务
sudo systemctl daemon-reload sudo systemctl enable my_container sudo systemctl start my_container
版权声明
本文仅代表作者观点,不代表本站立场。
本文系作者授权发表,未经许可,不得转载。