使用平台
目前docker仅支持64位环境下安装
- Ubuntu
- Debian
- RHEL系列
- centos
- Fedora
Ubuntu环境
更新内核
查看版本:
uname -a
更新为3.8内核:
apt-get install linux-headers-3.13.0-43-generic linux-image-3.13.0-43-generic linux-headers-3.13.0-43
更新Ubuntu启动加载器:
update-grub
init 6
检查Device Mapper
这里将Device Mapper作为存储驱动,自2.6.9内核之后就已经继承了这个驱动。这里检查一下:
ls -lh /sys/class/misc/device-mapper
或者
grep device-mapper /proc/device
如果没有就加载:
modprobe dm-mod
自2.6版本内核之后就对命名空间提供了良好的支持,不必纠结
安装docker
添加APT仓库:
echo "deb https://apt.dockerproject.org/repo ubuntu-trusty main" > /etc/apt/sources.list.d/docker.list
apt-get update
应该将trusty改为Ubuntu发行版本,查看版本:
lsb_release --codename | cut -f2
自docker1.8.0开始,docker的软件包名称从lxc-docker
变为了docker-engine
查看并安装:
apt list | grep docker-engine
apt-get install docker-engine
docker info
命令查看是否正常:
root@doushuo-virtual-machine:~# docker info
Containers: 0
Running: 0
Paused: 0
Stopped: 0
Images: 0
Server Version: 17.05.0-ce
Storage Driver: aufs
Root Dir: /var/lib/docker/aufs
Backing Filesystem: extfs
Dirs: 0
Dirperm1 Supported: true
Logging Driver: json-file
Cgroup Driver: cgroupfs
Plugins:
Volume: local
Network: bridge host macvlan null overlay
Swarm: inactive
Runtimes: runc
Default Runtime: runc
Init Binary: docker-init
containerd version: 9048e5e50717ea4497b757314bad98ea3763c145
runc version: 9c2d8d184e5da67c95d601382adf14862e4f2228
init version: 949e6fa
Security Options:
apparmor
Kernel Version: 3.19.0-25-generic
Operating System: Ubuntu 14.04.3 LTS
OSType: linux
Architecture: x86_64
CPUs: 1
Total Memory: 976.8MiB
Name: doushuo-virtual-machine
ID: HC3O:RZVT:6MFM:LJN5:RXC5:BUKQ:OGYH:MGP7:6BAJ:QP3Q:FGWV:XDGN
Docker Root Dir: /var/lib/docker
Debug Mode (client): false
Debug Mode (server): false
Registry: https://index.docker.io/v1/
Experimental: false
Insecure Registries:
127.0.0.0/8
Live Restore Enabled: false
WARNING: No swap limit support
docker与UFW
在Ubuntu中,如果使用的是UFW防火墙,默认UFW会丢弃所有转发的数据包,docker使用网桥对各个容器进行管理。我们需要修改UFW的配置:
root@doushuo-virtual-machine:~# grep "DEFAULT_FORWARD_POLICY"
DEFAULT_FORWARD_POLICY="DROP"
修改规则为ACCEPT
Red Hat及其发行版的环境
环境支持
- REHL/centos 6及其以上的版本
- Fedora 19及其以上的版本
- Oracle Linux 6和Oracle Linux7,带有Unbreakable企业内核发行版3(3.8.13)及其以上的版本
检查内核版本
uname -a
Linux localhost.localdomain 3.10.0-229.el7.x86_64 #1 SMP Fri Mar 6 11:36:42 UTC 2015 x86_64 x86_64 x86_64 GNU/Linux
目前所有官方支持的Redhat及其系列平台,应该都安装了支持docker的内核
检查Device Mapper
grep device-mapper /proc/device
没有就安装,安装完成后加载Device Mapper模块:
yum install -y device-mapper
modprobe dm-mod
安装docker
Redhat中,不通发行版安装过程略有不同,在这只考虑Redhat和centos环境
Redhat6/centos6:
rpm -Uvh http://download.fadoraproject.org/pub/epel/6/i386/epel-release-6-8.noarch.rpm
yum -y install docker-io
Redhat7:
subscription-manager repos --enable-rhel-7-server-extras-rpms
yum install -y docker
centos7 启动docker
systemctl start docker
docker info
centos7 开机自启动
systemctl enable docker
或者
chkconfig docker on
Docker用户界面
安装docker之后,也可以使用图形的用户界面进行管理,有一些正在开发中的docker用户界面和web控制台:
- Shipyard:https://github.com/ehazlett/shipyard
- DockerUI
- Kitematic:在Windows和OS X下使用的GUI界面工具,由docker公司免费发布的产品,包含于docker toolbox之中