1. 程式人生 > 其它 >記錄下在CentOS7中安裝Docker CE

記錄下在CentOS7中安裝Docker CE

1. 解除安裝系統中可能存在的老版本

  •   在CentOS中,老版本Docker的軟體包名是docker或docker-engine,而Docker CE的軟體包名稱是docker-ce。因此,若已安裝過老版本的Docker,需使用如下命令解除安裝
    • //複製如下程式碼,在Linux上直接執行

      sudo yum remove docker \
      docker-common \
      docker-selinux \
      docker-engine

  • 需要注意的是,執行該命令只會解除安裝Docker本身,不會刪除Docker儲存的檔案,例如映象、容器、卷以及網路檔案等。這些檔案儲存在/var/lib/docker目錄中,需要手動刪除。

2. 開始安裝docker CE

  • 複製執行以下命令,安裝Docker所需的包。其中:
    • yum-utils: 提供yum-conf ig-manager的工具;
    • device-mapper-persistent-data及lvm2: 是devicemapper儲存驅動所需的包.
    • sudo yum install -y yum-utils device-mapper-persistent-data lvm2
  • 複製執行如下命令,安裝stable倉庫。必須安裝stable倉庫,即使你想安裝edge或test倉庫中的Docker構建版本。
    • sudo yum-config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

  • [可選]執行如下命令,啟用edge及test倉庫。edge/test倉庫中其實也包含在了docker.repo檔案中,但預設是禁用的,可使用以下命令啟用
    • sudo yum-config-manager --enable docker-ce-edge  #啟動edge倉庫, 如果想要禁用將enable改為disable即可
      sudo yum-config-manager --enable docker-ce-test #啟動test倉庫
  • 複製執行以下命令,更新yum的包索引
    • sudo yum makecache fast
  • 複製執行如下命令即可安裝最新版本的Docker CE
    • sudo yum install docker-ce
  • 啟動docker
    • sudo systemctl start docker
  • 驗證安裝是否正確
    • sudo docker run hello-world
    • 返回結果如下

      • Unable to find image 'hello-world:latest' locally
        latest: Pulling from library/hello-world
        b8dfde127a29: Pull complete 
        Digest: sha256:7d91b69e04a9029b99f3585aaaccae2baa80bcf318f4a5d2165a9898cd2dc0a1
        Status: Downloaded newer image for hello-world:latest
        
        Hello from Docker!
        This message shows that your installation appears to be working correctly.
        
        To generate this message, Docker took the following steps:
         1. The Docker client contacted the Docker daemon.
         2. The Docker daemon pulled the "hello-world" image from the Docker Hub.
            (amd64)
         3. The Docker daemon created a new container from that image which runs the
            executable that produces the output you are currently reading.
         4. The Docker daemon streamed that output to the Docker client, which sent it
            to your terminal.
        
        To try something more ambitious, you can run an Ubuntu container with:
         $ docker run -it ubuntu bash
        
        Share images, automate workflows, and more with a free Docker ID:
         https://hub.docker.com/
        
        For more examples and ideas, visit:
         https://docs.docker.com/get-started/
  • 解除安裝:
    •   
      sudo yum remove docker-ce #解除安裝docker-ce
      sudo rm -rf /var/lib/docker #強制刪除docker相關檔案
      

        

使用指令碼來安裝Dockers

  •   依次執行如下命令:
    •   
      curl -fsSL get.docker.com -o get-docker.sh
    •       
       sudo sh get-docker.sh