docker 容器老是自启
时间: 2023-11-28 14:45:30 浏览: 55
以下是解决docker容器老是自启的方法:
1. 批量关闭自启
```shell
docker update --restart=no $(docker ps -a -q)
```
2. 针对单个容器实时设置
```shell
docker update --restart=no <CONTAINER ID>
```
3. 配置docker-compose文件,禁止容器自启
```yaml
version: '3'
services:
web:
image: nginx
restart: no
```
相关问题
docker容器自启动
要使Docker容器在启动时自动启动,您可以使用以下方法之一:
1. 使用`--restart`标志:在运行`docker run`命令时,可以添加`--restart`标志,并指定希望容器在退出时重新启动的策略。例如,使用`--restart=always`将容器配置为总是在退出时重新启动。以下是一个示例命令:
```
docker run --restart=always <image>
```
这将使容器在Docker守护程序启动时自动启动,并在每次退出后重新启动。
2. 使用Docker Compose:如果您使用Docker Compose来管理容器,可以在Compose文件中为服务设置`restart`属性。以下是一个示例:
```yaml
version: '3'
services:
myservice:
image: <image>
restart: always
```
在此示例中,将服务的`restart`属性设置为`always`将使容器自动启动并在退出时重新启动。
无论您选择哪种方法,都会确保容器在Docker守护程序启动时自动启动,并在退出时重新启动。
docker容器开机启动
Docker容器可以通过设置重启策略来实现开机启动。具体来说,可以在启动容器时使用`--restart`参数来设置重启策略。常用的重启策略包括:
- `no`:默认策略,容器退出时不重启容器;
- `on-failure`:在容器非正常退出时(退出状态非0)才重新启动容器;
- `on-failure:3`:在容器非正常退出时重启容器,最多重启3次;
- `always`:无论退出状态是如何,都重启容器;
- `unless-stopped`:在容器退出时总是重启容器,但是不考虑在Docker守护进程启动时就已经停止了的容器。
例如,以下命令启动一个名为`my_container`的容器,并设置重启策略为`always`:
```
docker run -d --name my_container --restart always my_image
```
这样,当Docker守护进程启动时,或者容器被手动停止时,容器都会自动重启。
阅读全文