Debian是使用非常广泛的系统,本篇文章第一部分讲述如何在Debian 8 (Jessie) 下面安装 Docker 环境,第二部分介绍了如何彻底的清理 Debian 8 上的 Docker 环境。
Debian 8 使用了3.16的内核,已经满足了docker运行的要求。但是因为安全方面的原因,docker.io 包并没有放在debian的stable源里面,而是放在了backports 源里面。为什么从jessie源里面移除docker.io包,简而言之,是因为go语言包版本的问题。 Debian backports的介绍和使用可以参考本篇文章,或者官方站点的介绍。
安装Docker包之前,先设置安装源。
这里我们使用了Docker官方提供的Debian安装源。配置方法如下。新建一个文件 /etc/apt/sources.list.d/docker.list 文件,加入以下内容:
deb https://apt.dockerproject.org/repo debian-jessie main
然后执行命令 apt-get update,更新源索引。如果是 Debian Stretch/Sid 系统,只需更换上面这一行中的 jessie 为 stretch 就可以了。
为使用Docker源做准备
由于 Docker 源使用了 https 协议,需要做两步准备。安装相关的包确保 apt 能在 https 模式下工作,导入 Docker 安装源的密钥。CA 证书库也需要,
$ apt-get update $ apt-get install apt-transport-https ca-certificates gnupg2
添加新的GPG key.
$ apt-key adv --keyserver hkp://p80.pool.sks-keyservers.net:80 --recv-keys 58118E89F3A912897C070ADBF76221572C52609D
安装 Docker 环境
确保已经按照第一步的操作步骤添加了backports源,然后执行下面的命令。
$ sudo apt-get update $ sudo apt-get install docker-engine
注意这里的包名为 docker-engine,不是系统中自带的那个低版本的 Docker,也不是先前使用的 Docker.io。安装完成后,Docker daemon 会自动启动。可以是用以下命令,确认docker运行是否正常,
$ sudo docker run --rm hello-world Hello from Docker! This message shows that your installation appears to be working correctly. To generate this message, Docker took the following steps: 1. The Docker client contacted the Docker daemon. 2. The Docker daemon pulled the "hello-world" image from the Docker Hub. 3. The Docker daemon created a new container from that image which runs the executable that produces the output you are currently reading. 4. The Docker daemon streamed that output to the Docker client, which sent it to your terminal. To try something more ambitious, you can run an Ubuntu container with: $ docker run -it ubuntu bash Share images, automate workflows, and more with a free Docker Hub account: https://hub.docker.com For more examples and ideas, visit: https://docs.docker.com/engine/userguide/
至此,安装过程结束,你的 Docker 之旅就此开始。
三、Debian 8如何删除docker?
Debian系统下面删除docker,要按照下面几个步骤来删除。
1. 使用purge命令清除docker-engine包。
$ sudo apt-get purge docker-engine
或者用autoremove命令将不再使用的依赖的包删除掉。
$ sudo apt-get autoremove --purge docker-engine
需要注意的是上面的命令只是删除了 docker-engine 包,并不会删除下载的镜像,产生的容器文件,卷,已经用户创建的配置文件。关于 apt-get 的详细用法,请参考这里。可以用下面的命令干掉它们:
$ sudo rm -rf /var/lib/docker
然后手工删除自己创建的配置文件就可以了。