不要直接sudo apt-get install docker,由於容器docker根本就不是這個。git
若是已經中招了,使用apt-get remove docker刪除,不然後患無窮。
github
之前的不少教程都是安裝Docker.IO的,但原來的版本已通過時了,須要完全清除,不然也會招來一大堆問題。docker
清除辦法:
shell
sudo apt-get remove docker.io find / -name "*docker.io*"
而後將列出的文件所有刪除, rm xxx。ubuntu
這裏是安裝的正常步驟,經驗證可行:
bash
apt-get update apt-get install apt-transport-https apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 36A1D7869245C8950F966E92D8576A8BA88D21E9 bash -c "echo deb https://get.docker.io/ubuntu docker main > /etc/apt/sources.list.d/docker.list" apt-get update apt-get install lxc-docker
而後是運行,可使用下面的命令啓動docker的本機服務(跳過阿里雲172網段設置的一個大坑-鄙視一下。參看知乎:https://www.zhihu.com/question/24863856,不如我這裏方法好使。感興趣的能夠直接運行docker -d,也許人品好...):
服務器
docker --bip 192.168.100.1/24 -d & #而後就能夠(注意必定要加上sudo): sudo docker info sudo docker images sudo docker ps
注意:網絡
上面的docker.io也屬於較老的版本,從官網安裝的docker-py等運行會出現Server版本不匹配的錯誤。ssh
最新的版本是docker-engine。不過,按照官網的安裝是沒法啓動Server的,安裝最新版用這裏的方法:curl
wget -qO- https://get.docker.com/ | sh
若是上面的不能成功,嘗試:
#wget -c參數支持斷點續傳,網絡很差斷線時從新運行便可。 wget -c https://get.docker.com/ -O docker-setup.sh sudo chmod +x docker-setup.sh sudo ./docker-setup.sh
可是,按照提示的docker daemon方法在阿里雲仍然沒法正常啓動(報出大量不明就裏的錯誤)。
主要由於缺省的網段被阿里雲系統預分配佔用了,手動分配便可:
docker --bip 192.168.100.1/24 daemon &
而後基本上就都ok了,docker-py也可使了。
目前的即將發佈的版本是1.11,已經能夠下載測試版試用(建議將curl換爲wget -c,支持斷點續傳):
# To install, run the following command as root: curl -sSL -O https://test.docker.com/builds/Linux/x86_64/docker-1.11.0-rc4.tgz # wget -c https://test.docker.com/builds/Linux/x86_64/docker-1.11.0-rc4.tgz sudo tar -zxf docker-1.11.0-rc4.tgz # Then start docker in daemon mode: sudo /usr/local/bin/docker daemon
要作主控機器的話,須要安裝docker-machine。這個是官方的(注意裏面的v.0.7.0-rc2是版本號):
curl -L https://github.com/docker/machine/releases/download/ v0.7.0-rc3/docker-machine-`uname -s`-`uname -m` \ >/usr/local/bin/docker-machine && \ chmod +x /usr/local/bin/docker-machine
若是curl失敗,參考下面的腳本(Ubuntu):
wget https://github.com/docker/machine/releases/download/ v0.7.0-rc3/docker-machine-Linux-x86_64 -O docker-machine sudo cp docker-machine /usr/local/bin/docker-machine sudo chmod +x /usr/local/bin/docker-machine
但這個的文件是存在Amazon上的,Aliyun上居然訪問不了!!!
先抓到本地(有的地方須要papapa):
# 注意:這裏不能使用`uname -s`-`uname -m`這種形式,由於下載機可能與目標系統不一致。 wget -c https://github.com/docker/machine/releases/download/ \ v0.7.0-rc3/docker-machine-Linux-x86_64 \ -O docker-machine
而後上傳:
scp ./docker-machine-Linux-x86_64 root@123.123.123.123(本身的服務器地址)
ssh進去,運行。
cp ./docker-machine-Linux-x86_64 /usr/local/bin/docker-machine chmod +x /usr/local/bin/docker-machine
運行docker-machine,OK!
wget https://github.com/docker/compose/releases/download/1.7.0-rc2/docker-compose-`uname -s`-`uname -m` -O docker-compose cp docker-compose /usr/local/bin/docker-compose chmod +x /usr/local/bin/docker-compose
若是不能下載,參照上面4.的辦法處理。