您好,登錄后才能下訂單哦!
本篇內容介紹了“Centos7怎么安裝與卸載docker應用容器引擎”的有關知識,在實際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓小編帶領大家學習一下如何處理這些情況吧!希望大家仔細閱讀,能夠學有所成!
docker 是一個開源的應用容器引擎,基于go 語言并遵從apache2.0協議開源。
docker 可以讓開發者打包他們的應用以及依賴包到一個輕量級、可移植的容器中,然后發布到任何流行的 linux 機器上,也可以實現虛擬化。
容器是完全使用沙箱機制,相互之間不會有任何接口(類似 iphone 的 app),更重要的是容器性能開銷極低。
docker的應用場景
web 應用的自動化打包和發布。
自動化測試和持續集成、發布。
在服務型環境中部署和調整數據庫或其他的后臺應用。
從頭編譯或者擴展現有的openshift或cloud foundry平臺來搭建自己的paas環境。
docker的優點
1、簡化程序:
docker 讓開發者可以打包他們的應用以及依賴包到一個可移植的容器中,然后發布到任何流行的 linux 機器上,便可以實現虛擬化。docker改變了虛擬化的方式,使開發者可以直接將自己的成果放入docker中進行管理。方便快捷已經是 docker的最大優勢,過去需要用數天乃至數周的 任務,在docker容器的處理下,只需要數秒就能完成。
2、避免選擇恐懼癥:
如果你有選擇恐懼癥,還是資深患者。docker 幫你打包你的糾結!比如 docker 鏡像;docker 鏡像中包含了運行環境和配置,所以 docker 可以簡化部署多種應用實例工作。比如 web 應用、后臺應用、數據庫應用、大數據應用比如 hadoop 集群、消息隊列等等都可以打包成一個鏡像部署。
3、節省開支:
一方面,云計算時代到來,使開發者不必為了追求效果而配置高額的硬件,docker 改變了高性能必然高價格的思維定勢。docker 與云的結合,讓云空間得到更充分的利用。不僅解決了硬件管理的問題,也改變了虛擬化的方式。
1.docker的安裝:
docker支持以下的centos版本:
centos 7 (64-bit)
centos 6.5 (64-bit)或更高的版本
1.2前提條件
目前,centos 僅發行版本中的內核支持 docker。
docker 運行在 centos 7 上,要求系統為64位、系統內核版本為 3.10 以上。
docker 運行在centos-6.5或更高的版本的 centos 上,要求系統為64位、系統內核版本為 2.6.32-431 或者更高版本。
我的操作系統版本:
centos7官方英文安裝docker ce說明:
centos7中文安裝docker ce說明
docker 軟件包和依賴包已經包含在默認的 centos-extras 軟件源里,可以更新yum源選擇yum install的方法安裝,也可以選擇下載rpm安裝包
您可以根據您的需要以不同的方式安裝docker ce:
大多數用戶設置docker的存儲庫并從中進行安裝,以便安裝和升級任務。這是推薦的方法。
有些用戶下載rpm軟件包并手動安裝,并完全手動管理升級。這對于在無法訪問互聯網的空隙系統上安裝docker等情況很有用。
1.3使用wget 命令進行下載rpm包
創建一個downloads文件夾,然后使用wget命令進行下載
[root@sungeek downloads]# wget https://download.docker.com/linux/centos/7/x86_64/stable/packages/docker-ce-18.03.1.ce-1.el7.centos.x86_64.rpm [root@sungeek downloads]# yum install docker-ce-18.03.0.ce-1.el7.centos.x86_64.rpm
1.4使用存儲庫進行安裝(推薦方法-不過國外存儲庫國內拉取很慢)
首次在新主機上安裝docker ce之前,需要設置docker存儲庫。之后,您可以從存儲庫安裝和更新docker。
設置存儲庫
1.安裝所需的包。yum-utils
提供了yum-config-manager
效用,并device-mapper-persistent-data
和lvm2
由需要devicemapper
存儲驅動程序。
[root@sungeek ~]# yum install -y yum-utils \ device-mapper-persistent-data \ lvm2
2.使用以下命令設置stable的存儲庫。即使您想從edge或test存儲庫安裝構建,也總是需要stable的存儲庫。
[root@sungeek ~]# yum-config-manager \ --add-repo \ https://download.docker.com/linux/centos/docker-ce.repo
3.可選:啟用edge和test存儲庫。這些存儲庫包含在docker.repo
上面的文件中,但默認情況下處于禁用狀態。您可以將它們與穩定的存儲庫一起啟用。
[root@sungeek ~]# yum-config-manager --enable docker-ce-edge [root@sungeek ~]# yum-config-manager --enable docker-ce-test
您可以通過使用該標志運行命令來禁用edge或test存儲庫。要重新啟用它,請使用標志。以下命令禁用邊緣存儲庫。yum-config-manager
--disable
--enable
[root@sungeek ~]# yum-config-manager --disable docker-ce-edge
注意:從docker 17.06開始,穩定版本也被推到edge并test版本庫。
安裝 docker ce-----[我是把服務器設置了vpn才能拉取,國外資源訪問很慢經常超時]
1.更新yum
軟件包索引。
[root@sungeek ~]# yum makecache fast loaded plugins: fastestmirror, langpacks loading mirror speeds from cached hostfile * base: mirrors.cn99.com * extras: mirrors.shu.edu.cn * updates: mirrors.shu.edu.cn base | 3.6 kb 00:00:00 docker-ce-edge | 2.9 kb 00:00:00 docker-ce-stable | 2.9 kb 00:00:00 docker-ce-test | 2.9 kb 00:00:00 extras | 3.4 kb 00:00:00 updates | 3.4 kb 00:00:00 docker-ce-test/x86_64/primary_db | 47 kb 00:00:00 metadata cache created
如果這是自添加 docker 鏡像倉庫以來您首次刷新軟件包索引,系統將提示您接受 gpg 密鑰,并且將顯示此密鑰的指紋。驗證指紋是否正確,并且在正確的情況下接受此密鑰。指紋應匹配060a 61c5 1b55 8a7f 742b 77aa c52f eb6b 621e 9f35
。
2.安裝最新版本的 docker ce,或者轉至下一步以安裝特定版本。
[root@sungeek ~]# yum install docker-ce
警告:如果您啟用了多個 docker 鏡像倉庫,進行安裝 或者更新而不在yum install
或yum update
命令中指定版本將始終安裝可用的最高版本, 這可能無法滿足您的穩定性需求。
3.在生產系統中,您應該安裝特定版本的 docker ce,而不是始終使用最新版本。列出可用版本。此示例使用sort -r
命令按版本號(從最高到最低)對結果進行排序,并且已被截斷。
注:此yum list
命令僅顯示二進制軟件包。如果還需要顯示 源軟件包,請從軟件包名稱中省略.x86_64
。
[root@sungeek ~]# yum list docker-ce.x86_64 --showduplicates | sort -r docker-ce.x86_64 18.03.0.ce-1.el7.centos docker-ce-stable
返回的列表取決于啟用了哪些存儲庫,并且特定于您的centos版本(.el7
在此示例中由后綴指示)。
例如,通過完全限定的軟件包名稱(它是軟件包名稱(docker-ce
))和版本字符串(第2列)直到第一個連字符來安裝特定版本,并用連字符(-
)分隔docker-ce-18.03.0.ce
[root@sungeek ~]# yum install docker-ce-<version> [root@sungeek ~]# yum install docker-ce-docker-ce-18.03.0.ce-1.el7.centos
升級 docker ce
如需升級 docker ce,首先運行yum makecache fast
,然后按照執行操作,并選擇您要安裝的新版本。
說明:國內通過上面這個方法會顯示拉取超時,因為國外資源訪問很慢,經常會超時!
https://download.docker.com/linux/centos/7/x86_64/test/repodata/f4f313b71260886934a949b16efa15e5032e0b16c4cd26c1e87fdbf935d039d1-primary.sqlite.bz2: [errno 12] timeout on https://download.docker.com/linux/centos/7/x86_64/test/repodata/f4f313b71260886934a949b16efa15e5032e0b16c4cd26c1e87fdbf935d039d1-primary.sqlite.bz2: (28, 'operation timed out after 30001 milliseconds with 0 out of 0 bytes received')
trying other mirror.
1.5 啟動docker進程
[root@localhost downloads]# systemctl start docker [root@localhost downloads]# systemctl status docker [root@localhost downloads]# systemctl enable docker --設置開機自啟動docker服務
1.6驗證安裝是否成功
直接輸入docker列出該命令的用法
測試運行第一個容器:hello-world
由于本地沒有hello-world這個鏡像,所以會下載一個hello-world的鏡像,并在容器內運行。
2.最常用的幾條命令
2.1使用docker images查看鏡像
[root@localhost downloads]# docker images repository tag image id created size docker.io/hello-world latest e38bc07ac18e 2 months ago 1.85 kb
2.2使用docker ps -a 查看容器
[root@localhost downloads]# docker ps -a container id image command created status ports names 3fa4f2de1c01 hello-world "/hello" 4 minutes ago exited (0) 4 minutes ago elastic_lumiere
docker ps也是最常用的命令,-a :顯示所有的容器,包括未運行的。
2.3使用docker logs查看容器控制臺輸出
獲取容器的日志
docker logs [container]
2.4卸載docker
1.查詢安裝過的包
[root@sungeek ~]# yum list installed | grep docker docker-client.x86_64 2:1.13.1-63.git94f4240.el7.centos @extras docker-common.x86_64 2:1.13.1-63.git94f4240.el7.centos @extras
2.刪除安裝的軟件包
[root@sungeek ~]# yum -y remove docker-client.x86_64 [root@sungeek ~]# yum -y remove docker-common.x86_64
3.刪除鏡像/容器等
[root@sungeek ~]# rm -rf /var/lib/docker/
4.輸入docker或docker --version驗證是否卸載
[root@sungeek ~]# docker --version -bash: /usr/bin/docker: no such file or directory [root@sungeek ~]# docker -bash: /usr/bin/docker: no such file or directory
5.導入加載進來覺得不合適可以使用 docker rm 容器id 、 docker rmi 鏡像id 來刪掉。
移除所有的容器和鏡像:
復制代碼 代碼如下:
[root@sungeek ~]# docker kill $(docker ps -q) ; docker rm $(docker ps -a -q) ; docker rmi $(docker images -q -a)
“Centos7怎么安裝與卸載docker應用容器引擎”的內容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業相關的知識可以關注億速云網站,小編將為大家輸出更多高質量的實用文章!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。