首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >码头工人-2出口的集装箱不能自动重新启动。

码头工人-2出口的集装箱不能自动重新启动。
EN

Server Fault用户
提问于 2020-11-07 20:23:25
回答 1查看 1.3K关注 0票数 1

docker不会重新启动我的容器,即使它列出了退出代码2是docker-compose ps

代码语言:javascript
复制
      Name                     Command                  State         Ports  
-----------------------------------------------------------------------------
app_autoheal_1      /docker-entrypoint autoheal      Up (healthy)                              
seafile             /sbin/my_init -- /scripts/ ...   Exit 2                  

它是在docker-compose.yaml中用restart: always定义的。

代码语言:javascript
复制
version: '3.4'
services:
  autoheal:
    restart: always
    image: willfarrell/autoheal
    environment:
      - AUTOHEAL_CONTAINER_LABEL=all
    volumes:
      - /var/run/docker.sock:/var/run/docker.sock
  seafile:
    image: seafileltd/seafile-mc:latest
    restart: always
    container_name: seafile
    healthcheck:
      test: ["CMD-SHELL", "test $(curl -k https://localhost/api2/ping/) = '\"pong\"'"]
      interval: 30s
      timeout: 20s
      retries: 3
      start_period: 30s

在哪种情况下会发生这种情况?

EN

回答 1

Server Fault用户

回答已采纳

发布于 2022-01-04 22:09:06

由Docker保留容器退出值2。容器应该通过exit 1正确地触发健康检查。

该命令的退出状态指示容器的健康状态。可能的价值是:

  • 成功-容器是健康的,为我们准备好了。
  • 1:不健康-容器不能正常工作。
  • 2:保留-不要使用此退出代码

来源:https://docs.docker.com/engine/reference/builder/#healthcheck

票数 0
EN
页面原文内容由Server Fault提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://serverfault.com/questions/1041687

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档