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

主頁 > 知識庫 > Docker容器無法被stop or kill問題的解決方法

Docker容器無法被stop or kill問題的解決方法

熱門標簽:地圖標注黃河的位置 靈圖uu電子寵物店地圖標注 承德地圖標注公司 400電話號碼辦理多少錢 地圖標注如何改成微信號 山東企業外呼系統公司 百度地圖標注公司位置要多少錢 虛假地圖標注 濮陽好的聯通400電話申請

Docker version 1.13.1

問題過程

某環境一個mysql容器無法被stop or kill or rm

sudo docker ps | grep mysql 查看該容器

7844250860f8 mysql:5.7.22  "/.r/r docker-entr..."  41 minutes ago  Up 8 minutes  r-dlrel-mysql-1-66df8f33

使用docker stop / docker kill / docker rm -f 等命令處理后,容器立馬自動重啟

立即查看容器,運行時間為:Up Less than a second,說明容器立馬啟動了

7844250860f8 mysql:5.7.22  "/.r/r docker-entr..."  42 minutes ago Up Less than a second  r-dlrel-mysql-1-66df8f33

kill該容器對應的物理進程,依然自動重啟

獲取物理進程方式:1.docker inspect中的 State.Pid字段為物理進程ID; 2.ps 命令

查看容器restart policy,策略為no,即不會自動重啟

如果需要更新運行中容器的restart策略,可以使用該命令:docker update –restart=no my-container

"RestartPolicy": {
  "Name": "no",
  "MaximumRetryCount": 0
},

程序員之間神奇的問題解決方式

你是否出現過這種場景:

  • 百思不得其解的問題,當走到同事面前,剛把問題說清楚,自己就恍然大悟了。
  • 問題明明很簡單,但程序運行就是出問題,然后找個同事幫忙檢查下基礎配置,自己又頓悟了。

這次我屬于第一種,剛把問題說完,立馬想起:擦,是容器編排工具Rancher在做調度,容器掛了之后會自動重啟。

登錄rancher一看,果然如此,”烏龍”問題。雖這次不是問題,但Docker確實有無法stop的問題,資料也很多。

拓展閱讀: Docker Restart Policy

解決過程中了解了很多Docker Restart Policy知識和Bug,這篇文章寫的簡單易懂:Ensuring Containers Are Always Running with Docker's Restart Policy

這里僅做下記錄,學習下Docker的四種Restart Policy。

no

no是默認策略,在任何情況下都不會restart容器

on-failure

on-failure表示如果容器 exit code異常時將restart,如果容器exit code正常將不做任何處理。

sudo docker run -d --name testing_restarts --restart on-failure:5 testing_restarts
85ff2f096bac9965a9b8cffbb73c1642bf7b64a2173bbd145961231861b95819

on-failure[:max-retries],max-retries表示最大重啟次數。

on-failure的好處是:如果容器以正常exit code終止,將不會 restart

always

無論容器exit code是什么,都會自動restart。列舉幾個場景:

  1. 容器以非正常狀態碼終止(如應用內存不足導致終止)
  2. 容器被正常 stopped,然后機器重啟或Docker服務重啟
  3. 容器在宕機在正常運行,然后重啟機器或Docker服務重啟

以上情況always側露都會restart容器,但是如果是 on-failure和no策略,機器被重啟之后容器將無法restart。

unless-stopped

unless-stopped 和 always 基本一樣,只有一個場景 unless-stopped有點特殊:

如果容器正常stopped,然后機器重啟或docker服務重啟,這種情況下容器將不會被restart

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

標簽:安康 福州 鷹潭 淮安 上海 德宏 樂山 泰安

巨人網絡通訊聲明:本文標題《Docker容器無法被stop or kill問題的解決方法》,本文關鍵詞  Docker,容器,無法,被,stop,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《Docker容器無法被stop or kill問題的解決方法》相關的同類信息!
  • 本頁收集關于Docker容器無法被stop or kill問題的解決方法的相關信息資訊供網民參考!
  • 推薦文章
    主站蜘蛛池模板: 公安县| 桐乡市| 澳门| 固原市| 吐鲁番市| 双流县| 崇仁县| 花垣县| 泽库县| 尤溪县| 神农架林区| 洛川县| 丰城市| 苍南县| 浏阳市| 焉耆| 新乡县| 平乡县| 密山市| 会同县| 乌恰县| 灵武市| 孟连| 巴中市| 永康市| 澄迈县| 禄劝| 抚州市| 乐平市| 阿坝县| 两当县| 麻江县| 邳州市| 仁寿县| 漳州市| 余姚市| 资兴市| 博湖县| 城固县| 潢川县| 濉溪县|