最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Docker啟動(dòng)鏡像就自動(dòng)退出問(wèn)題及解決

 更新時(shí)間:2023年07月27日 14:48:54   作者:藍(lán)綠色~菠菜  
這篇文章主要介紹了Docker啟動(dòng)鏡像就自動(dòng)退出問(wèn)題及解決方案,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教

Docker啟動(dòng)鏡像就自動(dòng)退出問(wèn)題

一、問(wèn)題引入

根據(jù)鏡像啟動(dòng)容器,執(zhí)行命令如下:docker run --name mycentos -d centos,通過(guò)docker ps查看正在運(yùn)行中容器,缺找不到mycentos容器。

再次通過(guò)docker ps -a查看發(fā)現(xiàn),mycentos容器已經(jīng)處于停止?fàn)顟B(tài)了。

二、原因

Docker容器后臺(tái)運(yùn)行,就必須有一個(gè)前臺(tái)進(jìn)程.

容器運(yùn)行的命令如果不是那些一直掛起的命令(eg. 運(yùn)行top,tail等),就是會(huì)自動(dòng)退出

這個(gè)是 docker 的機(jī)制問(wèn)題,比如我們的 web 容器,以 nginx 和 fpm 為例, 

正常情況下,啟動(dòng)服務(wù)只需啟動(dòng)相應(yīng)的 service 即可,例如:service nginx start && service php5-fpm start,但是,這樣做, nginx 和 fpm 均以后臺(tái)進(jìn)程模式運(yùn)行,就會(huì)導(dǎo)致 docker 前臺(tái)沒(méi)有正在運(yùn)行的應(yīng)用,

so,容器會(huì)立即自殺,因?yàn)樗X(jué)得沒(méi)事可做了。

三、解決方案

3.1 將要運(yùn)行的程序以前臺(tái)進(jìn)程的形式運(yùn)行

將要運(yùn)行的程序以前臺(tái)進(jìn)程的形式運(yùn)行,如果容器需要同時(shí)啟動(dòng)多個(gè)進(jìn)程,那么也只需要將其中一個(gè)掛起到前臺(tái)即可。 

比如上面所說(shuō)的 web 容器,只需要將啟動(dòng)指令修改為:

service php5-fpm start && nginx -g "daemon off;"

3.2 投機(jī)方案

對(duì)于可能不知道怎么前臺(tái)運(yùn)行的程序,提供一個(gè)投機(jī)方案,只需要在啟動(dòng)的命令之后,添加類似于 tail top 這種可以前臺(tái)運(yùn)行的程序,這里推薦tail ,然后持續(xù)輸出log文件即可。

service nginx start && service php5-fpm start && tail -f /var/log/nginx/error.log

再以上面所說(shuō)的 web 容器為例,可以寫(xiě)成:

service nginx start && service php5-fpm start && tail -f /var/log/nginx/error.log

3.3 以centos/ubuntu為例

同3.1,在啟動(dòng)centos/ubuntu容器時(shí),可以做一個(gè)手腳:做一個(gè)死循環(huán),持續(xù)輸出任意,這樣容器不會(huì)認(rèn)為沒(méi)事可做而自殺了。

docker run -d centos /bin/sh -c "while true; do echo hello world; sleep 1; done"

3.4 docker run 直接進(jìn)入容器內(nèi)

docker ?run ?-it ?image_id ?/bin/bash 或
docker ?run ?-it ?image_id ?/bin/sh

記錄docker啟動(dòng)鏡像自動(dòng)關(guān)閉的問(wèn)題

問(wèn)題復(fù)現(xiàn)

今天裝dockerui-portainer圖形化時(shí),安裝完鏡像,啟動(dòng)之后總是自動(dòng)退出。

解決辦法(我是直接用的第二種)

在啟動(dòng)腳本里面增加一個(gè)執(zhí)行進(jìn)程:

tail -f /dev/null

如果是別人的鏡像你不想修改,可以用-dit參數(shù)

docker run -dit --name ubuntu2 ubuntu

docker run -d --name ubuntu ubuntu /bin/bash -c "tail -f /dev/null"

總結(jié)

以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • 詳解如何使用Docker打包Python項(xiàng)目

    詳解如何使用Docker打包Python項(xiàng)目

    Docker是一種開(kāi)源的容器化平臺(tái),可以將應(yīng)用程序及其依賴項(xiàng)打包到一個(gè)輕量級(jí)、可移植的容器中,通過(guò)使用Docker,可以簡(jiǎn)化Python項(xiàng)目的部署和運(yùn)行,提高開(kāi)發(fā)效率和應(yīng)用程序的可移植性,本文將介紹如何使用Docker來(lái)打包Python項(xiàng)目,需要的朋友可以參考下
    2023-11-11
  • Docker下利用jenkins和docker實(shí)現(xiàn)持續(xù)交付

    Docker下利用jenkins和docker實(shí)現(xiàn)持續(xù)交付

    這篇文章主要介紹了利用jenkins和docker實(shí)現(xiàn)持續(xù)交付功能,本文給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2019-05-05
  • docker 設(shè)置windows存儲(chǔ)路徑的操作

    docker 設(shè)置windows存儲(chǔ)路徑的操作

    這篇文章主要介紹了docker 設(shè)置windows存儲(chǔ)路徑的操作,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2021-03-03
  • 詳解利用nginx和docker實(shí)現(xiàn)一個(gè)簡(jiǎn)易的負(fù)載均衡

    詳解利用nginx和docker實(shí)現(xiàn)一個(gè)簡(jiǎn)易的負(fù)載均衡

    本篇文章主要介紹了利用nginx和docker實(shí)現(xiàn)一個(gè)簡(jiǎn)易的負(fù)載均衡 ,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2017-06-06
  • Docker快速部署主流腳本語(yǔ)言JavaScript的全過(guò)程

    Docker快速部署主流腳本語(yǔ)言JavaScript的全過(guò)程

    JavaScript是目前所有主流瀏覽器上唯一支持的腳本語(yǔ)言,這也是早期JavaScript的唯一用途,下面這篇文章主要給大家介紹了關(guān)于Docker快速部署主流腳本語(yǔ)言JavaScript的相關(guān)資料,需要的朋友可以參考下
    2023-02-02
  • 淺談Docker-compose中的depends_on順序的問(wèn)題解決

    淺談Docker-compose中的depends_on順序的問(wèn)題解決

    本文主要介紹了淺談Docker-compose中的depends_on順序的問(wèn)題解決,文中通過(guò)示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2021-11-11
  • Windows Docker端口占用錯(cuò)誤及解決方案總結(jié)

    Windows Docker端口占用錯(cuò)誤及解決方案總結(jié)

    在 Windows 環(huán)境下使用 Docker 容器時(shí),端口占用錯(cuò)誤是開(kāi)發(fā)和運(yùn)維中常見(jiàn)且棘手的問(wèn)題,本文將深入剖析該問(wèn)題的成因,介紹如何通過(guò)查看端口分配,合理調(diào)整動(dòng)態(tài)端口范圍,以及重啟網(wǎng)絡(luò)服務(wù)等實(shí)用技巧,有效解決 Windows Docker 端口占用錯(cuò)誤,需要的朋友可以參考下
    2025-04-04
  • 親手教你Docker Compose安裝DOClever的詳細(xì)過(guò)程

    親手教你Docker Compose安裝DOClever的詳細(xì)過(guò)程

    DOClever是一個(gè)可視化免費(fèi)開(kāi)源的接口管理工具,DOClever前后端全部采用了javascript來(lái)作為我們的開(kāi)發(fā)語(yǔ)言。這篇文章主要介紹了Docker Compose安裝DOClever的詳細(xì)過(guò)程,需要的朋友可以參考下
    2021-09-09
  • docker的高可用配置詳解

    docker的高可用配置詳解

    這篇文章主要介紹了docker的高可用配置詳解,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2018-09-09
  • 一文系統(tǒng)梳理Docker中容器的常用命令

    一文系統(tǒng)梳理Docker中容器的常用命令

    這篇文章主要為大家詳細(xì)介紹了Docker容器中的常用命令,包括啟動(dòng)流程、容器運(yùn)行原理及容器日志查看方法并詳細(xì)解析DockerD架構(gòu)與鏡像原理,希望對(duì)大家有所幫助
    2026-05-05

最新評(píng)論

固始县| 安仁县| 五峰| 安陆市| 朝阳县| 大田县| 南阳市| 桂林市| 瓮安县| 南乐县| 会昌县| 辽阳县| 陵川县| 呈贡县| 卢氏县| 安新县| 边坝县| 德安县| 上蔡县| 丹寨县| 宣城市| 元朗区| 赞皇县| 汝城县| 乌兰浩特市| 达州市| 如东县| 乃东县| 二连浩特市| 冕宁县| 岢岚县| 宣汉县| 连南| 永泰县| 九龙县| 抚顺县| 澄城县| 开原市| 乐安县| 江津市| 麟游县|