docker生命周期管理和鏡像管理命令詳解
一、docker簡介
Docker是一個開源的容器化平臺,用于構(gòu)建、部署和管理應(yīng)用程序。它使用容器技術(shù)來將應(yīng)用程序及其依賴項打包為一個獨立的可移植容器,可以在不同的環(huán)境中運行,而不需要依賴特定的操作系統(tǒng)或硬件。 Docker的主要特點包括:
- 快速部署:Docker容器可以在幾秒鐘內(nèi)啟動,相比于傳統(tǒng)的虛擬機(jī)技術(shù),具有更快的啟動速度和更小的資源消耗。
- 輕量級:Docker容器共享主機(jī)操作系統(tǒng)的內(nèi)核,因此可以更高效地利用系統(tǒng)資源,并且容器本身也比虛擬機(jī)映像更小巧。
- 環(huán)境一致性:通過使用Docker容器,可以確保應(yīng)用程序在不同的環(huán)境中具有一致的運行結(jié)果,避免了由于環(huán)境差異導(dǎo)致的問題。
- 可移植性:Docker容器可以在不同的環(huán)境中運行,包括物理機(jī)、虛擬機(jī)、云服務(wù)器等,提供了更大的靈活性和可移植性。
- 簡化部署和管理:Docker提供了一套簡單易用的命令行工具和API,可以方便地創(chuàng)建、部署和管理容器,大大簡化了應(yīng)用程序的部署和管理流程。
總之,Docker通過容器技術(shù)提供了一種輕量級、快速部署和可移植的應(yīng)用程序運行環(huán)境,極大地簡化了應(yīng)用程序的部署和管理過程,提高了開發(fā)和運維的效率。
二、docker生命周期管理命令
1、docker run創(chuàng)建一個容器并啟動
docker run命令是使用鏡像創(chuàng)建一個容器并啟動,使用-it參數(shù)以交換模式運行容器,創(chuàng)建后自動進(jìn)入了容器,退出容器后容器停止運行。如果需要容器后臺繼續(xù)運行使用-itd參數(shù)。
[root@yws55 ~]# docker run -it --name rtest ubuntu:latest root@55ea2b8cb24f:/# exit [root@yws55 ~]# docker run -itd --name r3 ubuntu:latest 88749d15d10d5746dad7d0b9bb333adc8ea3cac4fd2b6cb8b8d68bea2955321d
2、docker create創(chuàng)建一個容器但不啟動
docker create創(chuàng)建容器和docker run參數(shù)幾乎是一樣的,區(qū)別就是一個創(chuàng)建后啟動容器,而docker create創(chuàng)建容器后狀態(tài)為created。
[root@yws55 ~]# docker create -it --name r2 ubuntu:latest 49f7e82c0bd8c2048983e8aca81b10c04274639a8cb25eea9575b860be50036e
3、docker start/stop/restart容器啟停
使用docker start啟動一個已經(jīng)創(chuàng)建好的容器,docker stop停止一個正在運行的容器,docker restart重啟一個正在運行的容器。
[root@yws55 ~]# docker stop utest utest [root@yws55 ~]# docker start utest utest [root@yws55 ~]# docker restart utest utest
4、docker kill殺死一個容器進(jìn)程
一般情況下我們使用docker stop正常停止容器運行就好了,只有在無法正常停止容器的情況下使用docker kill殺死容器進(jìn)程的方式停止指定容器。
[root@yws55 ~]# docker kill utest utest
5、docker rm刪除容器
如果容器正在運行則通過docker rm無法刪除,可以使用-f參數(shù)強制刪除,相當(dāng)于先執(zhí)行docker kill停止容器然后刪除。
[root@yws55 ~]# docker rm rtest rtest
6、docker pause/unpause暫?;蛘呋謴?fù)容器運行
docker pause可以暫停容器運行,暫停后容器無法提供服務(wù)和連接;使用docker unpause恢復(fù)后可以連接。
[root@yws55 ~]# docker pause utest utest [root@yws55 ~]# docker exec -it utest /bin/bash Error response from daemon: Container utest is paused, unpause the container before exec [root@yws55 ~]# docker unpause utest utest [root@yws55 ~]# docker exec -it utest /bin/bash root@c4b4e6b8e891:/#
7、docker exec容器中執(zhí)行命令
docker exec命令用于在容器中執(zhí)行命令,常用docker exec -it container_name /bin/bash登錄一個容器。也使用使用-d參數(shù)后臺執(zhí)行命令,常用于執(zhí)行容器中的shell腳本。
三、docker鏡像管理命令
1、docker images查看鏡像
docker images可以查看本地的鏡像,后面可以跟鏡像類型查看指定類型的鏡像,比如docker images ubuntu查看Ubuntu鏡像。
[root@yws55 ~]# docker images REPOSITORY TAG IMAGE ID CREATED SIZE ubuntu nginx 5fb077dc7894 4 weeks ago 181MB ubuntu latest 08d22c0ceb15 4 months ago 77.8MB
2、docker search搜索鏡像
使用docker search可以在線搜索可以下載的鏡像。
3、docker pull拉取鏡像
使用docker pull拉取鏡像,命令格式為docker pull name[:TAG],默認(rèn)拉取最新版鏡像。
[root@yws55 ~]# docker pull mysql:latest latest: Pulling from library/mysql … 5baa702110e4: Pull complete Digest: sha256:232936eb036d444045da2b87a90d48241c60b68b376caf509051cb6cffea6fdc Status: Downloaded newer image for mysql:latest docker.io/library/mysql:latest [root@yws55 ~]# docker images REPOSITORY TAG IMAGE ID CREATED SIZE mysql latest 041315a16183 40 hours ago 565MB
4、docker build創(chuàng)建鏡像
使用docker build命令可以創(chuàng)建一個鏡像,這種方式的鏡像是基于基礎(chǔ)鏡像創(chuàng)建一個滿足自己需求的個性化鏡像,如下例子根據(jù)Ubuntu最新鏡像創(chuàng)建一個安裝了vim命令的鏡像。
5、docker history查看鏡像創(chuàng)建記錄
docker history命令可以查看鏡像的創(chuàng)建記錄,如build方式創(chuàng)建的鏡像可以看到鏡像的下載、命令安裝、環(huán)境設(shè)置等步驟的創(chuàng)建記錄。
6、docker save保存鏡像為歸檔文件
我們可以docker save方式將docker鏡像保存為tar包文件,此方式主要用于鏡像文件的離線安裝。
[root@yws55 home]# docker save -o /home/ubuntu.vim.tar ubuntu:vim [root@yws55 home]# ll -h |grep ubuntu -rw------- 1 root root 184M Jul 6 16:37 ubuntu.vim.tar
7、docker load導(dǎo)入歸檔文件鏡像
使用docker load可以導(dǎo)入歸檔文件鏡像到本地鏡像列表中,常用于鏡像文件的離線安裝。
[root@yws55 home]# docker load -i /home/ubuntu.vim.tar Loaded image: ubuntu:vim
8、docker import從歸檔文件創(chuàng)建鏡像
使用docker import命令根據(jù)歸檔文件創(chuàng)建鏡像,可以在tar包文件基礎(chǔ)上創(chuàng)建新鏡像。
[root@yws55 home]# docker import -m “install net-tools” -c “CMD apt-get install -y net-tools” /home/ubuntu.vim.tar ubuntu:vim_v2 sha256:8c1256bf76846461c50f4371c05e4b745014446d37560f20d1497ce403cac2b0 [root@yws55 home]# docker images REPOSITORY TAG IMAGE ID CREATED SIZE ubuntu vim_v2 8c1256bf7684 21 seconds ago 192MB
9、docker rmi刪除鏡像
使用docker rmi可以刪除不需要的鏡像文件。
[root@yws55 home]# docker rmi ubuntu:vim Untagged: ubuntu:vim Deleted: sha256:a4194cac0dd51f5864847f78af9b3c5678841cc24677ecfe8b84ac1393365609
四、其他命令
1、docker version查看版本
docker version命令可以查看docker系統(tǒng)的版本,包括客戶端和服務(wù)端版本信息。
[root@yws55 ~]# docker version Client: Docker Engine - Community Version: 23.0.1 … Server: Docker Engine - Community Engine: Version: 23.0.1
2、docker info查看docker系統(tǒng)信息
docker info命令可以查看docker系統(tǒng)的基本信息,包括宿主機(jī)的操作系統(tǒng)類型;CPU、內(nèi)存等資源信息;容器和鏡像數(shù)量等信息。
[root@yws55 ~]# docker info Server: Containers: 2 Running: 1 Paused: 0 Stopped: 1 Images: 2 … Operating System: CentOS Linux 7 (Core) OSType: linux Architecture: x86_64 CPUs: 4 Total Memory: 7.638GiB
到此這篇關(guān)于docker生命周期管理和鏡像管理命令的文章就介紹到這了,更多相關(guān)docker鏡像管理命令內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
在Ubuntu上使用Grafana監(jiān)控Docker的方法
如今越來越多的公司開始使用Docker,一談起Docker總是會跟著讓人聯(lián)想到輕量這個詞,甚至?xí)幸环N通過Docker啟動一個服務(wù)會節(jié)省很多資源的錯覺。然而Docker的「輕」也只是相對于傳統(tǒng)虛擬機(jī)而已。Docker如何監(jiān)控呢?本文就給大家介紹在Ubuntu上如何使用Grafana監(jiān)控Docker。2016-12-12docker部署nginx并且實現(xiàn)https的方法步驟
啟用HTTPS可以提高網(wǎng)站的安全性、可信度,同時符合法規(guī)要求,本文主要介紹了docker部署nginx并且實現(xiàn)https的方法步驟,具有一定的參考價值,感興趣的可以了解一下2024-07-07詳解Django+Vue+Docker搭建接口測試平臺實戰(zhàn)
這篇文章主要介紹了詳解Django+Vue+Docker搭建接口測試平臺實戰(zhàn),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2021-04-04詳解如何使用Docker快速部署ELK環(huán)境(最新5.5.1版本)
這篇文章主要介紹了詳解如何使用Docker快速部署ELK環(huán)境(最新5.5.1版本),小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2018-08-08Docker安裝Jenkins-2.249.3-1.1的詳細(xì)過程
這篇文章主要介紹了Docker安裝Jenkins-2.249.3-1.1,通過編寫docke安裝腳本來實現(xiàn)安裝目的,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2021-10-10