好不容易想要學習,好不容易準備開始學習docker,卻沒想到敗在了安裝。
我遇到了以下幾個問題,先列出:
(1)使用docker version命令想看看安裝成功否,結果Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running?
(2)我安裝好後Client和Server的版本不一致:
解決方案如下:
針對問題一,只要輸入 service docker restart即可
針對問題二,我嘗試了許多方法,最後決定採用最原始的方法,刪了重裝。
首先,刪除:(我的是CentOS7)用這兩個命令
yum remove docker*
rm -rf /var/lib/docker
其次,安裝,我們可以去docker的官網看看https://docs.docker.com/install/linux/docker-ce/centos/#uninstall-docker-engine---community,它是給出了安裝的方法的。
但是我英語不太好看不懂,無妨,我解釋一下哈。
首先yum list docker-ce --showduplicates | sort -r 就是列出你能安裝的所有版本,實際操作效果如下。
但是如果剛開始用這個命令可能會失敗,因爲要先安裝倉庫,命令是這兩句,我記錄一下:
$ sudo yum install -y yum-utils \
device-mapper-persistent-data \
lvm2
$ sudo yum-config-manager \
--add-repo \
https://download.docker.com/linux/centos/docker-ce.repo
原文如下:(https://www.runoob.com/docker/centos-docker-install.html)
接着上面的說,然後進行安裝,那麼安裝命令是什麼呢?網上有很多安裝命令,我開始是直接隨便複製一條直接就開始安裝,看也不看一律都是yes,但是我剛剛定睛一看,發現了問題的不對。
我在網上隨便複製的安裝命令中,紅色框安裝的是我想要的版本的docker-ce,但是這個docker-ce-cli(也就是client端)的綠色框卻是我一開始就不喜歡的最新版本,苦思冥想了一下這個綠色的版本怎麼指定呢?
然後這時候我又看了看docker的安裝教程發現,哇其實人家是同時指定兩個的版本一起安裝的,不指定就直接安成最新版的了。
$ sudo yum install docker-ce-<VERSION_STRING> docker-ce-cli-<VERSION_STRING> containerd.io
上面的這條命令先是安裝了docker-ce-“某個版本”,然後安裝了docker-ce-cli-“某個版本”,最後安裝了conrainerd.io。(我這句話中的某個版本怎麼表示,人家也給出了教程,就是在你那個可安裝列表中看:從第二列開始一直到第一個連字符,就是他的版本號,比如下面說的你要安裝18.09.1這個版本,整條命令就是:$ sudo yum install docker-ce-18.09.1 docker-ce-cli-18.09.1 containerd.io)
最後,爲了給自己以後看方便,提一下,docker compose的安裝,這個玩意兒我安裝起來慢的根本不動,於是在網上搜索了一下怎麼加速。主要是下面兩步:
(1)加速命令:curl -sSL https://get.daocloud.io/daotools/set_mirror.sh | sh -s http://dc23009a.m.daocloud.io
(2)安裝過程
curl -L https://get.daocloud.io/docker/compose/releases/download/1.22.0/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose
其中1.22.0是版本號,我們可以修改成想要的版本,安裝後要授權才能用,命令如下:
chmod +x /usr/local/bin/docker-compose