Chinaunix首页 | 论坛 | 博客
  • 博客访问: 222498
  • 博文数量: 46
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 482
  • 用 户 组: 普通用户
  • 注册时间: 2014-07-18 14:14
个人简介

小菜鸟

文章分类

全部博文(46)

文章存档

2020年(2)

2017年(7)

2016年(36)

2014年(1)

我的朋友

分类: 虚拟化

2016-03-14 17:36:05


2.1 安装 Docker 的先决条件

运行 64 位 CPU 架构的计算机,Docker 目前不支持 32 位 CPU

运行 Linux 3.8 或者更高版本内核。

内核必须支持一种适合的存储驱动 (storage driver),例如 Device Mapper, AUFS

内核必须支持并开启 cgroup 和命名空间 (namespace) 功能

2.2 Ubuntu 中安装 Docker

官方支持版本:

Ubuntu Trusty 14.04 LTS 64 位

Ubuntu Precise 12.04 LTS 64 位

但是并不意味着其他的Ubuntu或者Debian版本就不能安装Docker,只要有合适的内核和

Docker所必须的支持即可。

2.2.1 检查前提条件

# 我的环境是 windows 7 旗舰版 64 位, 6GB 内存。

# 安装了 Vmware 虚拟机,里面安装了一个 Ubuntu 15.10 

[#1#cloudsoar@cloudsoar-virtual-machine ~]$uname -a
Linux cloudsoar-virtual-machine 3.19.0-15-generic #15-Ubuntu SMP Thu Apr 16 23:32:37 UTC 2015 x86_64 x86_64 x86_64 GNU/Linux

可以看到我的内核是 3.19.0 x86_64 的内核,因此不需要升级内核

2 查看Device Mapper

任何 Ubuntu 12.04 或者更高版本都已经安装了Device Mapper,如下命令可以确认是否安装

[#2#cloudsoar@cloudsoar-virtual-machine ~]$ls -l /sys/class/misc/device-mapper
lrwxrwxrwx 1 root root 0  3月 14 15:26 /sys/class/misc/device-mapper -> ../../devices/virtual/misc/device-mapper

2.2.2 安装 Docker

首先需要添加 Docker 的 APT 仓库,添加之前需要确认已经安装了curl命令

[#3#cloudsoar@cloudsoar-virtual-machine ~]$whereis curl
curl: /usr/bin/curl /usr/share/man/man1/curl.1.gz
[#4#cloudsoar@cloudsoar-virtual-machine ~]$sudo sh -c "echo deb  docker main > /etc/apt/sources.list.d/docker.list" 

如果没安装,使用 apt-get –y install curl 命令安装

接下来添加 Docker 仓库的 GPG 密钥

[#7#cloudsoar@cloudsoar-virtual-machine ~]$curl -s https://get.docker.io/gpg | sudo apt-key add - gpg: 找不到有效的 OpenPGP 数据。

我的虚拟机是今天安装的新的。这里提示报错,找不到OpenPGP数据。

网上差找到方法:

[#10#cloudsoar@cloudsoar-virtual-machine ~]$sudo curl -s https://get.docker.io/gpg | sudo apt-key add - gpg: 找不到有效的 OpenPGP 数据。
[#11#cloudsoar@cloudsoar-virtual-machine ~]$gpg --keyserver pgpkeys.mit.edu --recv-key 9AA38DCD55BE302B
gpg: 已创建目录‘/home/cloudsoar/.gnupg’
gpg: 新的配置文件‘/home/cloudsoar/.gnupg/gpg.conf’已建立
gpg: 警告:在‘/home/cloudsoar/.gnupg/gpg.conf’里的选项于此次运行期间未被使用
gpg: 钥匙环‘/home/cloudsoar/.gnupg/secring.gpg’已建立
gpg: 钥匙环‘/home/cloudsoar/.gnupg/pubring.gpg’已建立
gpg: 下载密钥‘55BE302B’,从 hkp 服务器 pgpkeys.mit.edu
gpg: /home/cloudsoar/.gnupg/trustdb.gpg:建立了信任度数据库
gpg: 密钥 55BE302B:公钥“Debian Archive Automatic Signing Key (5.0/lenny) ”已导入
gpg: 没有找到任何绝对信任的密钥
gpg: 合计被处理的数量:1
gpg:               已导入:1  (RSA: 1)
[#12#cloudsoar@cloudsoar-virtual-machine ~]$gpg -a --export  9AA38DCD55BE302B | sudo apt-key add -
OK

完成后更新源,sudo apt-get update

此时,我用虚拟机创建了一个快照备份,以便以后有问题需要恢复的时候方便使用。

下面开始安装Docker

[#14#cloudsoar@cloudsoar-virtual-machine ~]$sudo apt-get install lxc-docker
正在读取软件包列表... 完成
正在分析软件包的依赖关系树
正在读取状态信息... 完成
将会安装下列额外的软件包:
  aufs-tools cgroupfs-mount git git-man liberror-perl lxc-docker-1.9.1
建议安装的软件包:
  git-daemon-run git-daemon-sysvinit git-doc git-el git-email git-gui gitk gitweb git-arch
  git-cvs git-mediawiki git-svn
下列【新】软件包将被安装:
  aufs-tools cgroupfs-mount git git-man liberror-perl lxc-docker lxc-docker-1.9.1
升级了 0 个软件包,新安装了 7 个软件包,要卸载 0 个软件包,有 322 个软件包未被升级。
需要下载 12.1 MB 的软件包。
解压缩后会消耗掉 53.8 MB 的额外空间。
您希望继续执行吗? [Y/n] y

整个下载过程可能有点慢,我这里是电信100Mb的光纤,下载速度是10kb/s左右

安装完毕后,使用 docker info 查看是否安装并运行了

[#15#cloudsoar@cloudsoar-virtual-machine ~]$sudo docker info
Containers: 0
Images: 0
Server Version: 1.9.1
Storage Driver: aufs
 Root Dir: /var/lib/docker/aufs
 Backing Filesystem: extfs
 Dirs: 0
 Dirperm1 Supported: true Execution Driver: native-0.2
Logging Driver: json-file
Kernel Version: 3.19.0-15-generic
Operating System: Ubuntu 15.04
CPUs: 1
Total Memory: 2.43 GiB
Name: cloudsoar-virtual-machine
ID: RL5D:42DH:XMAC:GDQY:VWPJ:3YGM:UHQK:K3QD:USCH:TEGA:32PF:HUNB

2.2.3 Docker 和 UFW

ubuntu中,如果使用 UFW (Uncomplicated Firewall) 还需要启动 UFW 的数据包转发

Docker才能正常运行,需要对 /etc/default/uwf 文件做出一点改动

将 DEFAULT_FORWARD_POLICY="DROP" 改为 “ACCEPT”, 保存从新加载即可.

2.9 Docker 守护进程

当 Docker 安装完毕后, 默认会立即启动 Docker 守护进程. 监听 /var/run/docker.sock 这

个 Unix 套接字文件来获取来自客户端的 Docker 请求. 如果系统存在名为 docker 的用户组

的话,Docker 会将此套接字文件的所有者设置为 docker 用户组,这样 docker 用户组所

有用户都可以直接运行 Docker 不用使用 sudo。

2.9.1 配置 Docker 守护进程

[#19#cloudsoar@cloudsoar-virtual-machine ~]$sudo /usr/bin/docker -d -H tcp://0.0.0.0:2375
这条命令会将Docker守护进程绑定到宿主机上的所有网络接口。

2.9.2 检查守护进程是否在运行

[#2#cloudsoar@cloudsoar-virtual-machine ~]$sudo status docker
[sudo] password for cloudsoar: 
status: 无法连接到 Upstart: Failed to connect to socket /com/ubuntu/upstart: 拒绝连接
我这里报错。

今天暂时还未解决,有待进一步查找资料。



阅读(2669) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~