Docker基本命令使用詳解(推薦)
因?yàn)楣ぷ髦行枰獙⒎?wù)容器化,所以最近開始學(xué)習(xí)Docker相關(guān)的知識(shí),對(duì)于Docker入門常用的命令總結(jié)如下:
1. 運(yùn)行容器
$ sudo docker run -i -t ubuntu /bin/bash
-i 標(biāo)志保證容器中的STDIN是開啟的
-t 標(biāo)志告訴Docker為要?jiǎng)?chuàng)建的容器分配一個(gè)偽tty終端
ubuntu 表示我們創(chuàng)建容器使用的鏡像
/bin/bash 表示當(dāng)容器創(chuàng)建完成之后,Docker就會(huì)執(zhí)行容器中的/bin/bash命令
2. 給容器命名
$ sudo docker run --name my_container -i -t ubuntu /bin/bash
--name為容器指定一個(gè)名稱,使用指定的容器名稱比使用容器ID更方便。
3. 重新啟動(dòng)已停止的容器
#使用容器ID啟動(dòng)容器 $ sudo docker start f5a9f05f4214 #使用容器名稱啟動(dòng)容器 $ sudo docker start my_container $ sudo docker restart my_container
除了容器ID,我們還可以使用容器名稱來運(yùn)行容器,也可以用`docker restart`命令來重新啟動(dòng)一個(gè)容器,運(yùn)行以上命令,使用`sudo docker ps`就可以看到我們的容器已經(jīng)開始運(yùn)行了。
4. 附著到容器上
$ sudo docker attach my_container
Docker容器重新啟動(dòng)的時(shí)候,會(huì)沿用`docker run`命令時(shí)制定的參數(shù)來運(yùn)行,因此我們的容器重新啟動(dòng)后會(huì)運(yùn)行一個(gè)交互式的shell,此外可以用`docker attach`命令重新附著到該容器的會(huì)話上。
運(yùn)行命令之后可以需要按下回車鍵才能進(jìn)入該會(huì)話,如果退出容器的shell,容器會(huì)再次停止運(yùn)行。
5. 創(chuàng)建守護(hù)式容器
$ sudo docker run --name my_container -d ubuntu /bin/bash
-d 標(biāo)志Docker會(huì)將容器放到后臺(tái)運(yùn)行
`docker exec`命令會(huì)在容器內(nèi)部額外啟動(dòng)新進(jìn)程,可以在容器內(nèi)運(yùn)行的進(jìn)程有兩種類型:后臺(tái)任務(wù)和交互式任務(wù)。 #在容器中運(yùn)行后臺(tái)任務(wù) $ sudo docker exec -d my_container touch /etc/new_config_file #在容器內(nèi)運(yùn)行交互式任務(wù) $ sudo docker exec -t -i my_container /bin/bash
6.停止守護(hù)式容器
#通過容器名稱停止正在運(yùn)行的容器 $ sudo docker stop my_container #通過容器ID停止正在運(yùn)行的容器 $ sudo docker stop f5a9f05f4214 #停止容器進(jìn)程 $ sudo docker kill f5a9f05f4214
如果想快速停止某個(gè)容器,使用`docker kill`命令在向容器發(fā)送停止信號(hào)。
7.自動(dòng)重啟容器
$ sudo docker run --restart=always --name my_container -d ubuntu /bin/bash --restart 標(biāo)志會(huì)檢查容器的退出代碼,并據(jù)此來決定是否要重啟容器,默認(rèn)是不會(huì)重啟。 --restart的參數(shù)說明 always:無論容器的退出代碼是什么,Docker都會(huì)自動(dòng)重啟該容器。 on-failure:只有當(dāng)容器的退出代碼為非0值的時(shí)候才會(huì)自動(dòng)重啟。另外,該參數(shù)還接受一個(gè)可選的重啟次數(shù)參數(shù),`--restart=on-fialure:5`表示當(dāng)容器退出代碼為非0時(shí),Docker會(huì)嘗試自動(dòng)重啟該容器,最多5次。
8. 刪除容器
#根據(jù)容器標(biāo)識(shí)刪除容器 $ sudo docker rm my_container $ sudo docker rm f5a9f05f4214
如果容器已經(jīng)不再使用,可以使用`docker rm`命令來刪除他們,也可以通過給`docker rm`傳遞-f標(biāo)志來刪除運(yùn)行中的Docker容器(Docker 1.6.2+)。
#刪除所有容器 $ sudo docker rm `docker ps -a -q`
`docker ps`命令會(huì)列出現(xiàn)有的全部正在運(yùn)行的容器信息
-a 標(biāo)志代表列出所有容器,包括運(yùn)行的和已經(jīng)停止的
-q 標(biāo)志表示只需要返回容器的ID而不會(huì)返回容器的其他信息
9. 查看容器信息
#查看容器信息 $ sudo docker ps #通過docker inspect來獲得更詳細(xì)的容器信息 $ sudo docker inspect my_container
以上所述是小編給大家介紹的Docker基本命令使用詳解,希望對(duì)大家有所幫助,如果大家有任何疑問請(qǐng)給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對(duì)腳本之家網(wǎng)站的支持!
相關(guān)文章
使用Docker方式啟動(dòng)tomcat,訪問首頁出現(xiàn)404的解決方案
這篇文章主要介紹了使用Docker方式啟動(dòng)tomcat,訪問首頁出現(xiàn)404的解決方案,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2025-03-03
詳解Windows下運(yùn)用Docker部署Node.js開發(fā)環(huán)境
這篇文章主要介紹了詳解Windows下運(yùn)用Docker部署Node.js開發(fā)環(huán)境,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2017-01-01
Docker MySQL每天定時(shí)自動(dòng)備份的實(shí)現(xiàn)方法
本文主要介紹了Docker MySQL每天定時(shí)自動(dòng)備份的實(shí)現(xiàn)方法,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2023-01-01
docker 設(shè)置windows存儲(chǔ)路徑的操作
這篇文章主要介紹了docker 設(shè)置windows存儲(chǔ)路徑的操作,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2021-03-03
Docker中編碼和時(shí)區(qū)設(shè)置不生效問題排查小結(jié)
本文主要介紹了在Docker容器中排查編碼和時(shí)區(qū)設(shè)置不生效的問題,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2025-01-01
詳解docker compose搭建lnmpr環(huán)境實(shí)現(xiàn)
這篇文章主要為大家介紹了使用docker compose搭建lnmpr環(huán)境實(shí)現(xiàn)詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-11-11
Docker快速部署gitlab+gitlab-runner實(shí)例
這篇文章主要介紹了Docker快速部署gitlab+gitlab-runner實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2024-06-06
mysql8.4.0實(shí)現(xiàn)主從復(fù)制部署
主從復(fù)制是 MySQL 中一種用于實(shí)現(xiàn)數(shù)據(jù)冗余、提高可用性和性能的重要機(jī)制,本文主要介紹了mysql8.4.0實(shí)現(xiàn)主從復(fù)制部署,具有一定的參考價(jià)值,感興趣的可以了解一下2024-07-07

