阿里云服务器Ubuntu上装Docker-秘笈

一、阿里云服务器装Docker-基于Ubuntu14.04

不要直接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在阿里云镜像上运行要注意的地方

而后是运行,可使用下面的命令启动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

三、最新版本1.10.3的Docker安装

注意:网络

上面的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安装的曲折之路

要作主控机器的话,须要安装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!

五、安装Docker-compose

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.的办法处理。

相关文章
相关标签/搜索