1. 程式人生 > 實用技巧 >CentOS 下安裝 Docker

CentOS 下安裝 Docker

Docker 是跨平臺的解決方案,它支援在當前主流的各大平臺安裝,包括 Ubuntu、RHEL、CentOS、Debian 等 Linux 發行版,同時也可以在 OSX 、Microsoft Windows 等非 Linux 平臺下安裝使用。

因為 Linux 是 Docker 的原生支援平臺,所以推薦你在 Linux 上使用 Docker。由於生產環境中我們使用 CentOS 較多,下面主要針對在 CentOS 平臺下安裝和使用 Docker 展開介紹。

作業系統要求

要安裝 Docker,我們需要 CentOS 7 及以上的發行版本。建議使用overlay2儲存驅動程式。

解除安裝已有 Docker

如果你已經安裝過舊版的 Docker,可以先執行以下命令解除安裝舊版 Docker。

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

安裝 Docker

首次安裝 Docker 之前,需要新增 Docker 安裝源。新增之後,我們就可以從已經配置好的源,安裝和更新 Docker。新增 Docker 安裝源的命令如下:

$ sudo yum-config-manager \
    --add-repo \
    https://download.docker.com/linux/centos/docker-ce.repo

正常情況下,直接安裝最新版本的 Docker 即可,因為最新版本的 Docker 有著更好的穩定性和安全性。你可以使用以下命令安裝最新版本的 Docker。

$ sudo yum install docker-ce docker-ce-cli containerd.io

如果你想要安裝指定版本的 Docker,可以使用以下命令:

$ sudo yum list docker-ce --showduplicates | sort -r
docker-ce.x86_64            18.06.1.ce-3.el7                   docker-ce-stable
docker-ce.x86_64            18.06.0.ce-3.el7                   docker-ce-stable
docker-ce.x86_64            18.03.1.ce-1.el7.centos            docker-ce-stable
docker-ce.x86_64            18.03.0.ce-1.el7.centos            docker-ce-stable
docker-ce.x86_64            17.12.1.ce-1.el7.centos            docker-ce-stable
docker-ce.x86_64            17.12.0.ce-1.el7.centos            docker-ce-stable
docker-ce.x86_64            17.09.1.ce-1.el7.centos            docker-ce-stable

然後選取想要的版本執行以下命令:

$ sudo yum install docker-ce-<VERSION_STRING> docker-ce-cli-<VERSION_STRING> containerd.io

比如:

$ sudo yum install docker-ce-18.03.1 docker-ce-cli-18.03.1 containerd.io

安裝完成後,使用以下命令啟動 Docker。

$ sudo systemctl start docker

安裝完成後,我們可以使用以下命令啟動一個 hello world 的容器。

$ sudo docker run hello-world
Unable to find image 'hello-world:latest' locally
latest: Pulling from library/hello-world
0e03bdcc26d7: Pull complete
Digest: sha256:7f0a9f93b4aa3022c3a4c147a449bf11e0941a1fd0bf4a8e6c9408b2600777c5
Status: Downloaded newer image for hello-world:latest
Hello from Docker!

執行上述命令,Docker 首先會檢查本地是否有hello-world這個映象,如果發現本地沒有這個映象,Docker 就會去 Docker Hub 官方倉庫下載此映象,然後執行它。最後我們看到該映象輸出 "Hello from Docker!" 並退出。

其他相關問題:

使docker命令不用加sudo的方法

docker pull映象速度很慢的解決方法