国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 服務器 > Web服務器 > 正文

詳解Docker退出容器不關閉容器的方法

2024-09-01 13:56:25
字體:
來源:轉載
供稿:網友

進入docker容器后如果退出容器,容器就會變成Exited的狀態,那么如何退出容器讓容器不關閉呢?

如果要正常退出不關閉容器,請按Ctrl+P+Q進行退出容器,這一點很重要,請牢記!

以下示例為退出容器但不關閉容器

[root@localhost ~]# docker attach c600c4519fc8[root@c600c4519fc8 /]# exitexit[root@localhost ~]# docker ps -aCONTAINER ID    IMAGE        COMMAND       CREATED       STATUS          PORTS        NAMESc600c4519fc8    centos       "/bin/bash"     3 hours ago     Exited (0) 1 second ago            pensive_jackson5a7a0d694651    busybox       "sh"        20 hours ago    Exited (0) 20 hours ago            hungry_vaughan4b0296d18849    hello-world     "/hello"      46 hours ago    Exited (0) 46 hours ago            hopeful_yonath[root@localhost ~]# docker start pensive_jacksonpensive_jackson[root@localhost ~]# docker attach c600c4519fc8Ctrl + P + Q [root@c600c4519fc8 /]# read escape sequence[root@localhost ~]# docker ps -aCONTAINER ID    IMAGE        COMMAND       CREATED       STATUS          PORTS        NAMESc600c4519fc8    centos       "/bin/bash"     3 hours ago     Up 22 seconds                 pensive_jackson5a7a0d694651    busybox       "sh"        20 hours ago    Exited (0) 20 hours ago            hungry_vaughan4b0296d18849    hello-world     "/hello"      46 hours ago    Exited (0) 46 hours ago            hopeful_yonath

事實上我們可以在啟動容器的時候就進行配置,加入-d參數來啟動容器,當然,這條命令僅限于啟動全新的容器,啟動關閉的容器是不可以的。

Tips 1

docker run -d: 后臺運行容器,并返回容器ID

以下示例為使用docker -d啟動容器并退出

[root@localhost ~]# docker run -i -t -d centos /bin/bash8521b11d5d99535d4cb0080adc5a58a4dd018ecd0751d9945f7da7ab01bec330[root@localhost ~]# docker ps -aCONTAINER ID    IMAGE        COMMAND       CREATED       STATUS           PORTS        NAMES8521b11d5d99    centos       "/bin/bash"     4 seconds ago    Up 4 seconds                  eager_goldwasserc600c4519fc8    centos       "/bin/bash"     3 hours ago     Exited (0) 28 seconds ago            pensive_jackson5a7a0d694651    busybox       "sh"        20 hours ago    Exited (0) 20 hours ago             hungry_vaughan4b0296d18849    hello-world     "/hello"      46 hours ago    Exited (0) 46 hours ago             hopeful_yonath[root@localhost ~]# docker attach 8[root@8521b11d5d99 /]# uname -r3.10.0-514.el7.x86_64[root@8521b11d5d99 /]# exitexit[root@localhost ~]# docker ps -aCONTAINER ID    IMAGE        COMMAND       CREATED       STATUS           PORTS        NAMES8521b11d5d99    centos       "/bin/bash"     2 minutes ago    Exited (0) 2 seconds ago            eager_goldwasserc600c4519fc8    centos       "/bin/bash"     3 hours ago     Exited (0) 2 minutes ago            pensive_jackson5a7a0d694651    busybox       "sh"        20 hours ago    Exited (0) 20 hours ago            hungry_vaughan4b0296d18849    hello-world     "/hello"      46 hours ago    Exited (0) 46 hours ago            hopeful_yonath

在這里你可能會發現,使用了-d的命令退出后容器依然還是死了,動手型的朋友可能會發現只是用docker run -d去啟動容器也一樣是死的

這里其實需要了解的是容器的運行機制,Docker容器在后臺運行,必須要有一個前臺進程,這里我們讓容器有前臺程序運行,就可以實現容器的-d 啟動后存活

[root@localhost ~]# docker ps -aCONTAINER ID    IMAGE        COMMAND       CREATED       STATUS           PORTS        NAMESc600c4519fc8    centos       "/bin/bash"     3 hours ago     Exited (0) 4 minutes ago            pensive_jackson5a7a0d694651    busybox       "sh"        21 hours ago    Exited (0) 21 hours ago            hungry_vaughan4b0296d18849    hello-world     "/hello"      47 hours ago    Exited (0) 47 hours ago            hopeful_yonath[root@localhost ~]# docker run -d centos /bin/bash -c "nohup ping -i 1000 www.baidu.com"8aa19c9604382bc019797ccda831ae1bcebd81d86380b6040d636e03000b440a[root@localhost ~]# docker ps -aCONTAINER ID    IMAGE        COMMAND         CREATED       STATUS           PORTS        NAMES8aa19c960438    centos       "/bin/bash -c 'nohup…"  2 seconds ago    Up 2 seconds                  adoring_wingc600c4519fc8    centos       "/bin/bash"       3 hours ago     Exited (0) 5 minutes ago            pensive_jackson5a7a0d694651    busybox       "sh"           21 hours ago    Exited (0) 21 hours ago            hungry_vaughan4b0296d18849    hello-world     "/hello"         47 hours ago    Exited (0) 47 hours ago            hopeful_yonath

我這里使用nohup在后臺運行一個每1000秒ping一次百度的進程,另外你也可以使用"while true; do echo hello world; sleep 1; done",無限輸出hello world。

另外即便是有進程在后臺運行,你進入了容器,輸入exit退出,依然會終止容器的運行,請謹記。

Ctrl+P+Q依然是我認為的最佳用法。

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


注:相關教程知識閱讀請移步到服務器教程頻道。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 许昌县| 玛多县| 罗平县| 沭阳县| 慈溪市| 抚州市| 青海省| 张家口市| 洪雅县| 卓资县| 临沂市| 信阳市| 五指山市| 满洲里市| 咸丰县| 武鸣县| 广南县| 随州市| 开阳县| 明光市| 原阳县| 休宁县| 炉霍县| 吉安市| 武陟县| 江永县| 商南县| 汽车| 长治市| 漳平市| 龙泉市| 郓城县| 崇左市| 梁平县| 永善县| 兖州市| 杭锦旗| 广水市| 永登县| 临泽县| 藁城市|