婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av

主頁 > 知識庫 > Docker 的健康檢測機制

Docker 的健康檢測機制

熱門標簽:柳州市機器人外呼系統報價 外呼系統不彈窗 外呼系統的經營范圍 云會外呼系統 廈門營銷外呼系統平臺 涪陵商都400電話開通辦理 申請400電話價格多少 智能電話機器人坐席 安陽ai電銷機器人軟件

對于容器而言,最簡單的健康檢查是進程級的健康檢查,即檢驗進程是否存活。Docker Daemon會自動監控容器中的PID1進程,如果docker run命令中指明了restart policy,可以根據策略自動重啟已結束的容器。在很多實際場景下,僅使用進程級健康檢查機制還遠遠不夠。比如,容器進程雖然依舊運行卻由于應用死鎖無法繼續響應用戶請求,這樣的問題是無法通過進程監控發現的。

通常我們為了防止容器斷電或異常關閉后不能自動開機,我們可以加上

--restart=always 

例如

[root@aliyun ~]# docker run --restart=always -d --name blog -d -v /www:/www -v /wwwlogs:/var/log/wwwlogs -p 65423:65422 -p 80:80 -p 443:443 677
7714a84063ee6d405c80b891254bba0e5930f5d271c5ad76cfd6e2f0058d8056

這樣容器就可以自動重啟,但是有時候程序進入死鎖狀態,或者死循環狀態,應用進程并不退出,但是該容器已經無法提供服務了。在 1.12 以前,Docker 不會檢測到容器的這種狀態,從而不會重新調度,導致可能會有部分容器已經無法提供服務了卻還在接受用戶請求。

而自 1.12 之后,Docker 提供了 HEALTHCHECK 指令,通過該指令指定一行命令,用這行命令來判斷容器主進程的服務狀態是否還正常,從而比較真實的反應容器實際狀態。

當在一個鏡像指定了 HEALTHCHECK 指令后,用其啟動容器,初始狀態會為 starting,在 HEALTHCHECK 指令檢查成功后變為 healthy,如果連續一定次數失敗,則會變為 unhealthy。

HEALTHCHECK 支持下列選項:

  • –interval=<間隔>:兩次健康檢查的間隔,默認為 30 秒;
  • –timeout=<時長>:健康檢查命令運行超時時間,如果超過這個時間,本次健康檢查就被視為失敗,默認 30 秒;
  • –retries=<次數>:當連續失敗指定次數后,則將容器狀態視為 unhealthy,默認 3 次。和 CMD, ENTRYPOINT 一樣,HEALTHCHECK 只可以出現一次,如果寫了多個,只有最后一個生效。

在 HEALTHCHECK [選項] CMD 后面的命令,格式和 ENTRYPOINT 一樣,分為 shell 格式,和 exec 格式。命令的返回值決定了該次健康檢查的成功與否:0:成功;1:失敗;2:保留,不要使用這個值。

下面我們看下這個 dockerfile 文件

FROM centos
LABEL maintainer "awen Email: <hi@awen.me>"
WORKDIR /opt/

COPY CentOS7-Base-163.repo /etc/yum.repos.d/CentOS-Base.repo
COPY nginx /etc/init.d/nginx

ENV NGINX_V=1.13.5 \

  OPENSSL_V=1.0.2l \

  PCRE_V=8.41 \

  ZLIB_V=1.2.11 

RUN yum -y update \

  && yum -y install openssh-server openssl gcc gcc-c++ pcre-devel openssl-devel zlib-devel wget make perl tar net-tools \

  && wget -c -4 https://nginx.org/download/nginx-$NGINX_V.tar.gz \

  && wget -c -4 https://www.openssl.org/source/openssl-$OPENSSL_V.tar.gz \

  && wget -c -4 ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/pcre-$PCRE_V.tar.gz \

  && wget -c -4 http://zlib.net/zlib-$ZLIB_V.tar.gz \

  && groupadd -r www && useradd -r -g www www \

  && tar zxvf zlib-$ZLIB_V.tar.gz \

  && cd zlib-$ZLIB_V \

  && ./configure \

  && make \

  && make install \

  && cd /opt \

  && tar zxvf pcre-$PCRE_V.tar.gz \

  && cd pcre-$PCRE_V \

  && ./configure \

  && make \

  && make install \

  && cd /opt \

  && tar zxvf openssl-$OPENSSL_V.tar.gz \

  && tar zxvf nginx-$NGINX_V.tar.gz \

  && cd nginx-$NGINX_V \

  && ./configure --prefix=/usr/local/nginx --user=www --group=www --with-pcre=/opt/pcre-$PCRE_V --with-http_ssl_module --with-zlib=/opt/zlib-$ZLIB_V --with-openssl=/opt/openssl-$OPENSSL_V --with-http_v2_module --with-http_ssl_module \

  && make \

  && make install \

  && rm -rf /opt/* \

  && mkdir -p /usr/local/nginx/ssl \

  && mkdir -p /usr/local/nginx/conf/vhost \

  && mkdir -p /var/log/wwwlogs/ \

  && mkdir -p /www/ \

  && ssh-keygen -t rsa -f /etc/ssh/ssh_host_rsa_key -N '' \

  && ssh-keygen -t dsa -f /etc/ssh/ssh_host_dsa_key -N '' \

  && ssh-keygen -t ecdsa -f /etc/ssh/ssh_host_ecdsa_key -N '' \

  && ssh-keygen -t ed25519 -f /etc/ssh/ssh_host_ed25519_key -N '' \

  && echo "RSAAuthentication yes" >> /etc/ssh/sshd_config \

  && echo "PubkeyAuthentication yes" >> /etc/ssh/sshd_config  \

  && sed -i "s/PasswordAuthentication yes/PasswordAuthentication no/g" /etc/ssh/sshd_config \

  && sed -i "s/UsePAM yes/UsePAM no/g" /etc/ssh/sshd_config \

  && sed -i "s/#Port 22/Port 65422/g" /etc/ssh/sshd_config \

  && yum clean all \

  && mkdir /var/run/sshd \

  && chmod +x /etc/init.d/nginx \

  && rm -rf /root/*.cfg \

  && echo "Asia/Shanghai" > /etc/localtime


COPY ssl/* /usr/local/nginx/ssl/ 
COPY vhost/* /usr/local/nginx/conf/vhost/
COPY nginx.conf /usr/local/nginx/conf/
COPY ssh/* /root/.ssh/


VOLUME ["/www","/var/log/wwwlogs","/usr/local/nginx/ssl","/usr/local/nginx/conf/vhost"]

EXPOSE 65422 80 443

HEALTHCHECK CMD curl -fs http://localhost/ || exit 1
ENTRYPOINT /etc/init.d/nginx start && chown -R www:www /var/log/wwwlogs/ && /usr/sbin/sshd -D

其中

HEALTHCHECK CMD curl -fs http://localhost/ || exit 1

就是增加的健康監測配置,然后編譯后啟動,查看進程會發現其狀態是 starting

[root@aliyun ~]# docker ps -a
CONTAINER ID    IMAGE        COMMAND         CREATED       STATUS              PORTS                                NAMES
7714a84063ee    677         "/bin/sh -c '/etc/ini"  3 seconds ago    Up 2 seconds (health: starting)  0.0.0.0:80->80/tcp, 0.0.0.0:443->443/tcp, 0.0.0.0:65423->65422/tcp  blog

稍等查看,會發現其狀態為 healthy

[root@aliyun ~]# docker ps -a
CONTAINER ID    IMAGE        COMMAND         CREATED       STATUS            PORTS                                NAMES
7714a84063ee    677         "/bin/sh -c '/etc/ini"  About a minute ago  Up About a minute (healthy)  0.0.0.0:80->80/tcp, 0.0.0.0:443->443/tcp, 0.0.0.0:65423->65422/tcp  blog

我們可以通過 inspect 查看 最近3次的狀態

[root@aliyun ~]# docker inspect --format '{{json .State.Health}}' blog | python -m json.tool
{
  "FailingStreak": 0,
  "Log": [
    {
      "End": "2017-10-11T11:15:27.516562686+08:00",
      "ExitCode": 0,
      "Output": "<html>\r\n<head><title>301 Moved Permanently</title></head>\r\n<body bgcolor=\"white\">\r\n<center><h1>301 Moved Permanently</h1></center>\r\n<hr><center>nginx</center>\r\n</body>\r\n</html>\r\n",
      "Start": "2017-10-11T11:15:27.470554485+08:00"
    },
    {
      "End": "2017-10-11T11:15:57.563377729+08:00",
      "ExitCode": 0,
      "Output": "<html>\r\n<head><title>301 Moved Permanently</title></head>\r\n<body bgcolor=\"white\">\r\n<center><h1>301 Moved Permanently</h1></center>\r\n<hr><center>nginx</center>\r\n</body>\r\n</html>\r\n",
      "Start": "2017-10-11T11:15:57.516690754+08:00"
    },
    {
      "End": "2017-10-11T11:16:27.609685416+08:00",
      "ExitCode": 0,
      "Output": "<html>\r\n<head><title>301 Moved Permanently</title></head>\r\n<body bgcolor=\"white\">\r\n<center><h1>301 Moved Permanently</h1></center>\r\n<hr><center>nginx</center>\r\n</body>\r\n</html>\r\n",
      "Start": "2017-10-11T11:16:27.563533362+08:00"
    },
    {
      "End": "2017-10-11T11:16:57.654441173+08:00",
      "ExitCode": 0,
      "Output": "<html>\r\n<head><title>301 Moved Permanently</title></head>\r\n<body bgcolor=\"white\">\r\n<center><h1>301 Moved Permanently</h1></center>\r\n<hr><center>nginx</center>\r\n</body>\r\n</html>\r\n",
      "Start": "2017-10-11T11:16:57.609810588+08:00"
    },
    {
      "End": "2017-10-11T11:17:27.701113019+08:00",
      "ExitCode": 0,
      "Output": "<html>\r\n<head><title>301 Moved Permanently</title></head>\r\n<body bgcolor=\"white\">\r\n<center><h1>301 Moved Permanently</h1></center>\r\n<hr><center>nginx</center>\r\n</body>\r\n</html>\r\n",
      "Start": "2017-10-11T11:17:27.654580727+08:00"
    }
  ],
  "Status": "healthy"
}

如果健康檢查連續失敗超過了重試次數,狀態就會變為 (unhealthy)。

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。

標簽:蕪湖 南充 撫順 晉城 綏化 福州 孝感 巴中

巨人網絡通訊聲明:本文標題《Docker 的健康檢測機制》,本文關鍵詞  Docker,的,健康,檢測,機制,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《Docker 的健康檢測機制》相關的同類信息!
  • 本頁收集關于Docker 的健康檢測機制的相關信息資訊供網民參考!
  • 推薦文章
    婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av
    欧美日韩性生活| 欧美中文字幕一二三区视频| 国产夫妻精品视频| 欧美日韩一区国产| 亚洲激情av在线| 欧美性受极品xxxx喷水| 亚洲成a人v欧美综合天堂| 色琪琪一区二区三区亚洲区| 亚洲图片有声小说| 欧美日韩成人高清| 日本欧美一区二区三区| 91精品国产色综合久久不卡蜜臀 | 欧美电影一区二区| 奇米一区二区三区| 久久久久高清精品| 色综合一个色综合亚洲| 日韩精品乱码免费| 2024国产精品| 在线观看免费视频综合| 免费精品99久久国产综合精品| 精品国产不卡一区二区三区| 国产精品一区二区久激情瑜伽| 国产精品国产a级| 欧美久久久影院| 国产suv精品一区二区6| 一级特黄大欧美久久久| 精品国产免费久久| 91国内精品野花午夜精品 | 欧美三级电影网| 精品亚洲免费视频| 樱花草国产18久久久久| 精品国产91九色蝌蚪| a4yy欧美一区二区三区| 蜜桃av噜噜一区二区三区小说| 国产精品视频在线看| 欧美理论电影在线| 丁香亚洲综合激情啪啪综合| 亚洲福利视频一区二区| 亚洲色欲色欲www在线观看| 精品国产乱子伦一区| 欧美图片一区二区三区| 国产麻豆视频一区二区| 五月天丁香久久| 最新国产成人在线观看| 久久综合av免费| 日韩欧美激情四射| 欧美日韩一区二区三区高清| 成人午夜电影网站| 国产综合久久久久久鬼色 | 亚洲一区免费在线观看| 国产精品不卡视频| 国产日韩在线不卡| 久久久久久97三级| 精品免费视频.| 欧美videos大乳护士334| 欧美高清激情brazzers| 欧美怡红院视频| 在线观看亚洲a| 色狠狠av一区二区三区| 99国产精品久久久久久久久久久| 国产福利精品导航| 国产精品一二二区| 成人综合婷婷国产精品久久| 国产一区二区免费看| 国产在线国偷精品产拍免费yy| 日韩国产欧美一区二区三区| 午夜精品成人在线视频| 午夜精品在线看| 麻豆视频观看网址久久| 麻豆成人91精品二区三区| 激情久久久久久久久久久久久久久久| 秋霞影院一区二区| 久久国产剧场电影| 国产一区二区在线电影| 成人深夜视频在线观看| 色婷婷精品久久二区二区蜜臂av| 在线亚洲精品福利网址导航| 欧美色图片你懂的| 欧美日韩大陆在线| 精品不卡在线视频| 国产蜜臀97一区二区三区| 中文字幕亚洲在| 亚洲福中文字幕伊人影院| 美女视频免费一区| 国产成人午夜精品5599| 91黄色激情网站| 欧美一区二区福利在线| 中文乱码免费一区二区| 亚洲一区av在线| 黄色日韩网站视频| 91麻豆123| 精品国产一二三| 亚洲私人黄色宅男| 轻轻草成人在线| 成人免费高清视频在线观看| 欧美午夜一区二区| 久久精品人人做人人综合| 亚洲精品中文字幕乱码三区 | 午夜精品久久久久久久久久| 秋霞影院一区二区| 波多野结衣亚洲一区| 欧美人动与zoxxxx乱| 国产精品久久久一本精品| 青青草国产成人99久久| 色婷婷久久久综合中文字幕| 日韩欧美国产综合在线一区二区三区| 日本一区二区三区dvd视频在线| 亚洲观看高清完整版在线观看| 久草在线在线精品观看| 色狠狠av一区二区三区| 久久先锋资源网| 麻豆一区二区99久久久久| 在线中文字幕不卡| 国产欧美一区二区精品秋霞影院 | 视频一区在线播放| 东方欧美亚洲色图在线| 欧美成人精品1314www| 亚洲一区二区五区| 91影院在线免费观看| 久久综合视频网| 开心九九激情九九欧美日韩精美视频电影 | 国产校园另类小说区| 亚洲与欧洲av电影| 99精品在线观看视频| 国产日韩欧美一区二区三区乱码| 亚洲成a人片综合在线| 91国产成人在线| 亚洲午夜精品在线| 丰满少妇久久久久久久| 久久只精品国产| 国产呦精品一区二区三区网站| 欧美色涩在线第一页| 亚洲一区二区三区三| 欧洲精品一区二区三区在线观看| 国产精品国产三级国产aⅴ入口| 蜜臀av性久久久久蜜臀aⅴ四虎| 欧美日韩国产综合视频在线观看| 亚洲一区在线观看免费| 欧美午夜不卡在线观看免费| 一区二区免费看| 欧美亚洲综合在线| 亚洲第一av色| 在线观看91av| 久久er精品视频| 久久精品欧美日韩| 国产高清无密码一区二区三区| 国产亚洲一二三区| 粉嫩av一区二区三区粉嫩| 国产精品久久久久久久久久久免费看 | 成人h动漫精品一区二区| 国产精品久久久久久久久免费樱桃| 成人精品电影在线观看| 自拍偷拍国产精品| 欧美三级日韩在线| 蜜臀久久99精品久久久久久9| 久久影视一区二区| av男人天堂一区| 亚洲在线中文字幕| 日韩午夜激情av| 国产a精品视频| 亚洲女同一区二区| 欧美一区二区三区免费在线看 | 亚洲精品一区在线观看| 韩日精品视频一区| 亚洲欧美综合在线精品| 欧美日韩一区二区在线观看| 久久av老司机精品网站导航| 中文字幕制服丝袜一区二区三区| 一本大道综合伊人精品热热 | 欧美日韩一卡二卡三卡| 久久99九九99精品| 一区二区三区中文字幕| 2014亚洲片线观看视频免费| 在线观看www91| 久久国产精品99久久久久久老狼| 国产精品青草久久| 91 com成人网| 91免费版在线看| 国产麻豆精品久久一二三| 亚洲欧美日韩国产另类专区| 欧美精品一区二区三区很污很色的| 成人h版在线观看| 久久99热狠狠色一区二区| 亚洲精品国产成人久久av盗摄 | 亚洲国产精品99久久久久久久久 | 欧美亚洲国产一区在线观看网站| 国产一区二区影院| 亚洲国产精品一区二区www在线| 2023国产精品| 欧美一区二区三区成人| 色88888久久久久久影院野外| 国产精品系列在线播放| 蜜臀av性久久久久蜜臀aⅴ| 亚洲欧洲日本在线| 国产日产欧产精品推荐色| 欧美精品乱码久久久久久按摩| 在线视频国内自拍亚洲视频| 成人午夜短视频| 成人av在线资源| 丁香婷婷综合网|