共计 2760 个字符,预计需要花费 7 分钟才能阅读完成。
导读 | 本人的学习笔记,主要是对《我的第一本 Docker 书》、《Docker —— 从入门到实践》的学习记录,并结合其他各种资源的学习。这次记录了 4 种常见系统的 Docker 安装方法,这些系统我不是都有,但是也记录一下,也许以后用得上。 |
Docker 目前已经支持非常多的 Linux 平台,Ubuntu、Red Hat 企业版 Linux、Debian、CentOs、Fedora、Oracle Linux 等。如果使用虚拟环境,甚至可以在 OS X 和 windows 中运行。
- Docker 目前只能在 64 位 CPU 架构的计算机上运行(目前只能是 x86_64、amd64)。
- Linux 3.8 或 更高版本的内核。3.8 之前的版本也能运行,但效果不同,遇到问题时大家都建议你升级。
- 内核必须支持一些是和的存储驱动(strage drive),例如:
- Device Manage
- AUFS
- vfs
- btrfs
- 默认存储驱动通常是 Device
- 内核必须支持并开启 cgroup 和命名空间 (banespace) 功能
版本支持:Ubuntu 12.04 LTS 及之后的 64 位版本。但这并不意味着除此之外的 Ubuntu 或 Debian 不能按照 Docker,只要有适当的内核和 Docker 所必须的支持,其他版本也能安装,但是不能得到官方的支持,遇到 BUG 无法得到官方的修复。
现假设我安装好的 Ubuntu 12.04 LTS 64 位电脑为 darknight.example.com。
检查前提条件
内核
确认依据安装能满足要求的 Linux 内核。通过 uname 命令查询。
$ uname -a
Ubuntu 12.04.3 及以上版本的默认内核是 3.8.0 x86_64。
如果查到的不是 3.8 版的内核,可以用 apt-get 来升级:
$ sudo apt-get update
$ sudo apt-get install linux-headers-3.8.0-27-generic
然后更新 Grub 启动加载器来加载新内核:
$ sudo update-grub
完成安装后,重启宿主机来启用新的 3.8 内核:
$sudo reboot
重启之后,可以用 uname - a 确认是否运行了新版本内核。
检查 Device Mapper
这里使用 Device Mapper 昨晚存储驱动。2.6.9 版本及以上的 Linux 内核已经集成了 Device Mapper,并提供了一个将块设备映射到高级虚拟设备的方法。Device Mapper 支持“自动精简配置”(thin-provisioning)的概念,可以在一种文件系统中存储多台虚拟设备(Docker 镜像中的层)。所以很适合做 Docker 的存储驱动。
Ubuntu 12.04 以上都装好了,可以用一下代码检查:
$ ls l /sys/class/misc/device-mapper
如果没有出现 device-mapper 的信息,可以加载 dm_mod 模块:
$ sudo modprobe dm_mod
cgroup 和命名空间自 2.6 版本已经开始集成在 Linux 内核中了。
安装 Docker
通过 Docker 源安装最新版本。要安装最新的 Docker 版本,首先需要安装 apt-transport-https 支持,之后通过添加源来安装。
$ sudo apt-get install apt-transport-https
$ sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 36A1D7869245C8950F966E92D8576A8BA88D21E9
$ sudo bash -c "echo deb https://get.docker.io/ubuntu docker main > /etc/apt/sources.list.d/docker.list"
$ sudo apt-get update
$ sudo apt-get install lxc-docker
如果是较低版本的 Ubuntu 系统,需要先更新内核。
$ sudo apt-get update
$ sudo apt-get install linux-image-generic-lts-raring linux-headers-generic-lts-raring
$ sudo reboot
然后重复上面的步骤即可。
安装之后启动 Docker 服务。
$ sudo service docker start
评论中一网友的建议:
ubuntu 下,用以下这种脚本方式安装最方便,来源于 sameersbn/docker-gitlab 官方说明:
sudo apt-get purge docker.io
curl -s https://get.docker.io/ubuntu/ | sudo sh
sudo apt-get update
sudo apt-get install lxc-docker
使用 Boot2Docker 工具。
Boot2Docker 是一个极小的虚拟机,同时提供了一个包装脚本(wrapper script)对该虚拟机进行管理。
安装 Boot2Docker 的条件:
- VirtualBox
- Docker 客户端
安装 Boot2Docker
到 GitHub 安装,或者官网下载安装。官网有个视频可学。
启动 Boot2Docker
进入系统的 Application 文件夹,找到 Boot2Docker 打开
测试 Boot2Docker
通过本机的 Docker 客户端连接到 Boot2Docker 虚拟机中运行 Docker 守护进程,来测试 Boot2Docker 安装程序是否正常运行
$ docker info
当显示出 Docker 信息时就是安装成功运行了。
与 OS X 一样,用 Boot2Docker 安装。官网、GitHub。
同样需要两个条件:
- VirtualBox
- Docker 客户端
下载好后运行脚本即可。
测试 Boot2Docker
也是用以下命令测试:
$ docker info
当显示出 Docker 信息时就是安装成功运行了。
对于 CentOS6,可以使用 EPEL 库安装 Docker,命令如下
$ sudo yum install http://mirrors.yun-idc.com/epel/6/i386/epel-release-6-8.noarch.rpm
$ sudo yum install docker-io
CentOS7
CentOS7 系统 CentOS-Extras 库中已带 Docker,可以直接安装:
$ sudo yum install docker
安装之后启动 Docker 服务,并让它随系统启动自动加载。
$ sudo service docker start
$ sudo chkconfig docker on