dockerfile - 為什么docker容器啟動(dòng)不了?
問題描述
sudo docker run -d centos /bin/bash創(chuàng)建容器之后,使用docker ps -a 發(fā)現(xiàn)容器已經(jīng)停止,再使用docker start id 啟動(dòng)容器之后,觀察ps -a 的操作時(shí)間,發(fā)現(xiàn)容器其實(shí)已經(jīng)啟動(dòng)過(guò),但是馬上就停止了。這是什么原因?
補(bǔ)充:嘗試三種鏡像的啟動(dòng),centos,mysql,nginx,結(jié)果只有nginx能啟動(dòng)。其他兩個(gè)怎么也啟動(dòng)不了。
補(bǔ)充二:問題基本已經(jīng)找到了,原因就是:Docker容器后臺(tái)運(yùn)行,就必須有一個(gè)前臺(tái)進(jìn)程。主線程結(jié)束,容器會(huì)退出。sudo docker run -d centos 改成 sudo docker -dit centos 就行了。總感覺有點(diǎn)別扭,大家還有更好的解決辦法嗎?望大家指教。。。
問題解答
回答1:sudo docker run -t -i centos /bin/bash
回答2:通過(guò) docker logs 容器ID 可以查看到容器主程序的輸出,嘗試通過(guò)這個(gè)分析一下原因。
另外系統(tǒng)鏡像默認(rèn)啟動(dòng)是bash,如果沒有銜接輸入流,本身就會(huì)馬上結(jié)束。
相關(guān)文章:
1. javascript - 能否讓vue-cli的express修改express重啟服務(wù)2. 解決Android webview設(shè)置cookie和cookie丟失的問題3. javascript - gulp打包引入文件路徑在生產(chǎn)環(huán)境和開發(fā)環(huán)境下的切換4. node.js - npm一直提示proxy有問題5. 網(wǎng)頁(yè)爬蟲 - python爬蟲翻頁(yè)問題,請(qǐng)問各位大神我這段代碼怎樣翻頁(yè),還有價(jià)格要登陸后才能看到,應(yīng)該怎么解決6. PHP單例模式7. 最新版本的微信web開發(fā)者工具必須要APPID,會(huì)提供測(cè)試號(hào),但是像你一樣tabBar配置的話不會(huì)顯示首頁(yè)與日志,難道我要下載跟你一樣的版本?8. android - Windows系統(tǒng)下運(yùn)行react-native App時(shí),報(bào)下面的錯(cuò)誤?9. python - tweepy 庫(kù) 連接Twitter API 報(bào)錯(cuò)10. python - 網(wǎng)頁(yè)title中包含換行,如何用正則表達(dá)式提取出來(lái)?
