Centos7下安裝與卸載docker應用容器引擎

Docker 是一個開源的應用容器引擎,基於 Go 語言 並聽從Apache2.0協議開源。html

Docker 可讓開發者打包他們的應用以及依賴包到一個輕量級、可移植的容器中,而後發佈到任何流行的 Linux 機器上,也能夠實現虛擬化。linux

容器是徹底使用沙箱機制,相互之間不會有任何接口(相似 iPhone 的 app),更重要的是容器性能開銷極低。git

閱讀目錄:

1.Docker的安裝

2.前提條件

3.(第一種)使用wget 命令進行下載rpm包

4.(第二種:推薦)使用存儲庫進行安裝

5.升級 DOCKER CE

6.啓動Docker進程

7.驗證安裝是否成功

8.最經常使用的幾條命令

9.卸載docker

 

Docker的應用場景

  • Web 應用的自動化打包和發佈。golang

  • 自動化測試和持續集成、發佈。docker

  • 在服務型環境中部署和調整數據庫或其餘的後臺應用。數據庫

  • 從頭編譯或者擴展示有的OpenShift或Cloud Foundry平臺來搭建本身的PaaS環境。

Docker的優勢

  • 一、簡化程序:

Docker 讓開發者能夠打包他們的應用以及依賴包到一個可移植的容器中,而後發佈到任何流行的 Linux 機器上,即可以實現虛擬化。Docker改變了虛擬化的方式,使開發者能夠直接將本身的成果放入Docker中進行管理。方便快捷已是 Docker的最大優點,過去須要用數天乃至數週的 任務,在Docker容器的處理下,只須要數秒就能完成。centos

  • 二、避免選擇恐懼症:

若是你有選擇恐懼症,仍是資深患者。Docker 幫你打包你的糾結!好比 Docker 鏡像;Docker 鏡像中包含了運行環境和配置,因此 Docker 能夠簡化部署多種應用實例工做。好比 Web 應用、後臺應用、數據庫應用、大數據應用好比 Hadoop 集羣、消息隊列等等均可以打包成一個鏡像部署。bash

  • 三、節省開支:

一方面,雲計算時代到來,使開發者沒必要爲了追求效果而配置高額的硬件,Docker 改變了高性能必然高價格的思惟定勢。Docker 與雲的結合,讓雲空間獲得更充分的利用。不只解決了硬件管理的問題,也改變了虛擬化的方式。app

 

 

1.Docker的安裝:

Docker支持如下的CentOS版本:oop

  • CentOS 7 (64-bit)
  • CentOS 6.5 (64-bit) 或更高的版本

2.前提條件

目前,CentOS 僅發行版本中的內核支持 Docker。

Docker 運行在 CentOS 7 上,要求系統爲64位、系統內核版本爲 3.10 以上。

Docker 運行在 CentOS-6.5 或更高的版本的 CentOS 上,要求系統爲64位、系統內核版本爲 2.6.32-431 或者更高版本。

個人操做系統版本:

 

您能夠根據您的須要以不一樣的方式安裝Docker CE,下面介紹兩種安裝方法

  • 一些用戶下載 RPM 軟件包並手動進行安裝,而後徹底由手動管理升級。在某些狀況(例如,在不能訪問互聯網的隔離系統中安裝 Docker)下,這頗有用。
  • 大多數用戶設置Docker的存儲庫並從中進行安裝,以便安裝和升級任務。這是推薦的方法。

 

3.(第一種)使用wget 命令進行下載rpm包

docker官方包下載地址:https://download.docker.com/linux/centos/7/x86_64/stable/Packages/

建立一個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

 

4.(第二種:推薦)使用存儲庫進行安裝

首次在新主機上安裝Docker CE以前,須要設置Docker存儲庫。以後,您能夠從存儲庫安裝和更新Docker。

卸載舊版本

較舊版本的Docker被稱爲docker或docker-engine。若是已安裝這些,請卸載它們以及相關的依賴項

$ sudo yum remove docker \
                  docker-client \
                  docker-client-latest \
                  docker-common \
                  docker-latest \
                  docker-latest-logrotate \
                  docker-logrotate \
                  docker-selinux \
                  docker-engine-selinux \
                  docker-engine

4.1設置存儲庫

1.安裝所需的包。yum-utils提供了yum-config-manager 效用,並device-mapper-persistent-datalvm2由須要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版本庫。

 

4.2.更新 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

4.3.安裝最新版本的 Docker CE,或者轉至下一步以安裝特定版本。

[root@sungeek ~]# yum install docker-ce 

警告:若是您啓用了多個 Docker 鏡像倉庫,進行安裝 或者更新而不在 yum install  yum update 命令中指定版本將始終安裝可用的最高版本, 這可能沒法知足您的穩定性需求。

在生產系統中,您應該安裝特定版本的 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-18.03.0.ce-1.el7.centos

 

5.升級 DOCKER CE

如需升級 Docker CE,首先運行yum makecache fast,而後按照安裝說明執行操做,並選擇您要安裝的新版本。

 

 

6.啓動Docker進程

[root@localhost downloads]# systemctl start docker
[root@localhost downloads]# systemctl status docker
[root@localhost downloads]# systemctl enable docker --設置開機自啓動docker服務

7.驗證安裝是否成功

直接輸入docker列出該命令的用法

測試運行第一個容器:hello-world

因爲本地沒有hello-world這個鏡像,因此會下載一個hello-world的鏡像,並在容器內運行。

8.最經常使用的幾條命令

8.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

8.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 :顯示全部的容器,包括未運行的。

8.3使用docker logs查看容器控制檯輸出

獲取容器的日誌

docker logs [container]

 

9.卸載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 CE說明:https://docs.docker.com/install/linux/docker-ce/centos/

centos7中文安裝docker CE說明:https://docs.docker-cn.com/engine/installation/linux/docker-ce/centos/

還有更多的命令能夠參考docker命令大全:http://www.runoob.com/docker/docker-command-manual.html

相關文章
相關標籤/搜索