sudo docker run -d centos /bin/bash创建容器之后,使用docker ps -a 发现容器已经停止,再使用docker start id 启动容器之后,观察ps -a 的操作时间,发现容器其实已经启动过,但是马上就停止了。这是什么原因?
补充:尝试三种镜像的启动,centos,mysql,nginx,结果只有nginx能启动。其他两个怎么也启动不了。
补充二:问题基本已经找到了,原因就是:Docker容器后台运行,就必须有一个前台进程。主线程结束,容器会退出。
sudo docker run -d centos 改成 sudo docker -dit centos 就行了。
总感觉有点别扭,大家还有更好的解决办法吗?望大家指教。。。
仅有的幸福2017-04-25 09:05:07
Docker 로그 컨테이너 ID를 통해 컨테이너 메인 프로그램의 출력을 확인할 수 있습니다. 이를 통해 이유를 분석해 보세요.
또한 시스템 이미지의 기본 시작은 bash입니다. 입력 스트림이 연결되지 않으면 즉시 종료됩니다.