目前docker官方支持的Debian系操作系统,只有 Ubuntu 12.04 和 Debian 8.0 Jessie (64-bit),不支持Debian 7 Wheezy。由于之前Docker运行时,要求Linux kernel必须在3.8以上,Go要1.2 ,Debian 7需要升级内核和编译新版Go才能安装,如果是用OpenVZ VPS的话,是无法升级内核的。不过从Docker 0.8开始,已经不再依赖这些了。只要Linux kernel version 在2.6.32-431以上即可。
PS:Docker 1.0正式发布!1.0 版本包含很多新特性,这也是 Docker 的首个产品级的版本。从今天开始,你将会一直听到一个新的概念 —— Docker as a platform ,其组件包括 Docker 引擎、容器运行时和打包工具以及 Docker Hub,这是一个基于云端的协作、内容和工作流自动化的服务。
确认内核版本
uname -r
使用官方的ubuntu的软件源,它和debian 7是兼容的:
echo deb http://get.docker.io/ubuntu docker main | sudo tee /etc/apt/sources.list.d/docker.list sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 36A1D7869245C8950F966E92D8576A8BA88D21E9 sudo apt-get update sudo apt-get install -y lxc-docker
四行命令,Docker以及安装好了。下面创建一个CentOS虚拟系统:
docker pull centos docker run -i -t centos /bin/bash
现在我们已经进入了虚拟的CentOS系统,验证一下:
cat /etc/RedHat-release
常见错误
root@debian:~# sudo apt-get install -y lxc-docker Reading package lists... Done Building dependency tree Reading state information... Done E: Unable to locate package lxc-docker
你的系统是32位的,docker目前只支持64位操作系统。
root@debian:~# docker -d 2014/06/09 23:51:19 WARNING: You are running linux kernel version 2.6.32-042stab088.4, which might be unstable running docker. Please upgrade your kernel to 3.8.0. [/var/lib/docker|d37c2fff] job serveapi(unix:///var/run/docker.sock) [/var/lib/docker|d37c2fff] job initserver() [/var/lib/docker|d37c2fff.initserver()] Creating server 2014/06/09 23:51:19 Listening for HTTP on unix (/var/run/docker.sock) [/var/lib/docker|d37c2fff] job init_networkdriver() [/var/lib/docker|d37c2fff.init_networkdriver()] creating new bridge for docker0 Error creating bridge: package not installed [/var/lib/docker|d37c2fff] -job init_networkdriver() = ERR (1) Error creating bridge: package not installed [/var/lib/docker|d37c2fff] -job initserver() = ERR (1) 2014/06/09 23:51:19 Error creating bridge: package not installed
你的内核版本过低,请确保Linux kernel version 在2.6.32-431以上。