docker开启自启容器
时间: 2023-08-12 22:10:31 浏览: 147
要让Docker容器在系统启动时自动启动,你可以使用Docker的restart策略和守护进程来实现。以下是一种常用的方法:
1. 确保你的容器已经创建并可以手动启动运行。
2. 使用`docker ps -a`命令查看所有容器的列表,找到你想要设置自启的容器的名称或ID。
3. 运行以下命令设置容器的restart策略为always:
```
docker update --restart=always <容器名称或ID>
```
替换`<容器名称或ID>`为你的容器的实际名称或ID。
4. 验证设置是否成功,可以使用`docker inspect <容器名称或ID>`命令来查看容器的详细信息,检查其中的"RestartPolicy"字段是否为"always"。
现在,当你的系统启动时,Docker将会自动启动该容器,并且如果容器意外停止,Docker也会自动重新启动它。
相关问题
docker 开机自启
Docker可以通过在容器创建时的--restart参数来指定重启策略。可以选择的参数值有:no(不自动重启容器,默认值)、on-failure(容器发生错误而退出时重启容器,可以指定重启的最大次数)、unless-stopped(在容器已经停止或Docker停止/重启时才重启容器)和always(在容器已经停止或Docker停止/重启时才重启容器,手动停止的不算)。[1]
如果想要设置Docker开机自启,可以通过修改Docker服务的配置文件来实现。具体步骤如下:
1. 使用sudo vi /lib/systemd/system/docker.service命令打开Docker服务的配置文件。
2. 在[Service]部分添加以下两行配置:
ExecStartPost=/usr/sbin/iptables -P FORWARD ACCEPT
Restart=always
这样设置后,Docker服务在启动时会自动执行iptables命令,并且设置重启策略为always。[2]
需要注意的是,如果手动停止一个容器,容器设置的重启策略将会被忽略,除非Docker守护进程重启或者容器手动重启。这样设计是为了避免如果重启策略设置为always时,无法手动停止容器的情况发生。[3]
关闭docker开机自启
关闭Docker容器开机自启通常涉及修改主机系统的启动配置文件。以下是Windows和Linux系统中操作的基本步骤:
**在Windows Docker Desktop上:**
1. 打开命令提示符或PowerShell,以管理员权限运行。
2. 使用`docker ps -a`命令列出所有容器,找到你要关闭自启动的容器ID或名称。
3. 对于停止容器,输入`docker stop [container-id]`。如果需要将该容器添加到例外列表,不会自动重启,可以使用`docker update --restart no [container-id]`。
4. 保存更改,确保不再包含启动选项的`.json`配置文件(默认在%USERPROFILE%\AppData\Roaming\Docker\config\daemon.json)。
**在Linux系统(例如Ubuntu或Debian):**
1. 打开终端并编辑`/etc/docker/daemon.json`文件,如果没有则先创建它。
2. 在文件中,查找`"restart"`或`"restartPolicy"`部分,将其设置为`"no"`,表示不允许自动重启。示例内容可能是:
```
{
"restart": "no"
}
```
3. 保存文件并退出编辑器。确保重启Docker服务使其生效,可以用`sudo systemctl daemon-reload && sudo systemctl restart docker`。
**
阅读全文