docker run和start的區(qū)別說明
docker中run和start的區(qū)別
docker run 后面指定的是一個鏡像
而docker start指定的是一個容器
docker run是利用鏡像生成容器,并啟動容器,而docker start是啟動一個之前生成過的容器
嘗試
而docker start是啟動一個已經(jīng)創(chuàng)建過的容器
比如我的docker里面有springboot項目的一個鏡像
那么我使用docker run命令將他啟動,使用docker ps 可以看到已經(jīng)啟動了一個springboot容器,然后我們停止它(docker stop)
再使用docker start啟動它,再使用docker ps可以看到之前停止的已經(jīng)啟動了
[root@localhost ~]# docker images REPOSITORY TAG IMAGE ID CREATED SIZE springbootdocker latest 5fe8370f7f83 25 hours ago 677 MB daocloud.io/rabbitmq 3-management 1d0a5c8a8d4e 4 weeks ago 177 MB daocloud.io/library/tomcat latest 89481b5d9082 7 weeks ago 506 MB daocloud.io/library/mysql 5.5 d404d78aa797 3 months ago 205 MB daocloud.io/library/java latest d23bdf5b1b1b 2 years ago 643 MB docker.io/java 8 d23bdf5b1b1b 2 years ago 643 MB [root@localhost ~]# docker run --name springboot -p 8080:8080 -d 5f dd100a4c60a7a6606244873bc61a8a6f419361ab78fcd038d4baef3f38f05157 [root@localhost ~]# docker ps CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES dd100a4c60a7 5f "java -Djava.secur..." 19 seconds ago Up 18 seconds 0.0.0.0:8080->8080/tcp springboot [root@localhost ~]# docker stop dd dd [root@localhost ~]# docker ps -a CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES dd100a4c60a7 5f "java -Djava.secur..." 39 seconds ago Exited (143) 3 seconds ago springboot f3b181616dac 1d0a5c8a8d4e "docker-entrypoint..." 3 weeks ago Exited (255) 2 weeks ago 4369/tcp, 5671-5672/tcp, 0.0.0.0:5762->5762/tcp, 15671/tcp, 25672/tcp, 0.0.0.0:15672->15672/tcp myrabbit0 ea0a9cb0fe2f 89481b5d9082 "catalina.sh run" 4 weeks ago Exited (129) 4 weeks ago clever_leakey [root@localhost ~]# docker start dd dd [root@localhost ~]# docker ps CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES dd100a4c60a7 5f "java -Djava.secur..." About a minute ago Up 2 seconds 0.0.0.0:8080->8080/tcp springboot [root@localhost ~]#
補(bǔ)充:Docker 容器start | restart | stop
近期在維護(hù)Fabric網(wǎng)絡(luò)中,遇到服務(wù)器斷電,除了kafka和zookeeper的容器,其余容器都是Exited狀態(tài)。
好吧,我需要重啟容器
1. docker start
啟動一個或多個已經(jīng)停止的容器
docker start [OPTIONS] CONTAINER [CONTAINER...]
#可以根據(jù)容器的Name或者ID啟動容器 $ docker start ID/NAME Options: # -a 參數(shù) 連接容器并打印輸出或錯誤 -a, --attach Attach STDOUT/STDERR and forward signals # 參數(shù) 不懂... --detach-keys string Override the key sequence for detaching a container # -i 參數(shù) 啟動容器并進(jìn)入交互模式 -i, --interactive Attach container's STDIN
2. docker restart
重啟容器,不論之前是否啟動或停止
docker restart[OPTIONS] CONTAINER [CONTAINER...]
#可以根據(jù)容器的Name或者ID重啟容器 $ docker restart ID/NAME Options: # -t 參數(shù) 停止容器前等待的時間(默認(rèn)10秒) -t, --time int Seconds to wait for stop before killing the container (default 10)
3. docker stop
停止一個運(yùn)行中的容器
docker stop[OPTIONS] CONTAINER [CONTAINER...]
#可以根據(jù)容器的Name或者ID停止容器 $ docker restart ID/NAME Options: # -t 參數(shù) 停止容器前等待的時間(默認(rèn)10秒) -t, --time int Seconds to wait for stop before killing it (default 10)
有了這些命令,方便重啟已經(jīng)停止的容器。
另外要說一點(diǎn),F(xiàn)abric網(wǎng)絡(luò)里的chaincode容器,不需要使用上述命令重啟,在啟動的peer節(jié)點(diǎn)使用query命令查詢后,chaincode容器將會自動啟動。
版權(quán)聲明:本站文章來源標(biāo)注為YINGSOO的內(nèi)容版權(quán)均為本站所有,歡迎引用、轉(zhuǎn)載,請保持原文完整并注明來源及原文鏈接。禁止復(fù)制或仿造本網(wǎng)站,禁止在非www.sddonglingsh.com所屬的服務(wù)器上建立鏡像,否則將依法追究法律責(zé)任。本站部分內(nèi)容來源于網(wǎng)友推薦、互聯(lián)網(wǎng)收集整理而來,僅供學(xué)習(xí)參考,不代表本站立場,如有內(nèi)容涉嫌侵權(quán),請聯(lián)系alex-e#qq.com處理。