Docker在Ubuntu的部署实践

jopen 9年前

本文讲述Docker在Ubuntu系统上的部署过程。其中,Ubuntu为12.04.5 LTS, Precise Pangolin版。

1、安装Docker

# apt-get update  # apt-get install docker.io  Reading package lists... Done  Building dependency tree         Reading state information... Done  E: Unable to locate package docker.io  E: Couldn't find any package by regex 'docker.io'

说明Ubuntu 12.04的软件仓库中没有Docker软件。检索网上的资料,Ubuntu 14.04是支持Docker的。在不升级OS的情况下,安装就需要采用另外的方法。
不过这样也好,软件仓库中的Docker通常都不是最新版本,采用其它安装方式可以安装最新版本的Docker。
注:在Ubuntu的软件仓库里,Docker叫docker.io,原因是已经有别的软件先占据了Docker这个名字。

# curl -sSL https://get.docker.com/ubuntu/ | sudo sh  Executing: gpg --ignore-time-conflict --no-options --no-default-keyring --secret-keyring /tmp/tmp.JO0wslsx8U --trustdb-name /etc/apt/trustdb.gpg --keyring /etc/apt/trusted.gpg --primary-keyring /etc/apt/trusted.gpg --keyserver hkp://p80.pool.sks-keyservers.net:80 --recv-keys 36A1D7869245C8950F966E92D8576A8BA88D21E9  gpg: requesting key A88D21E9 from hkp server p80.pool.sks-keyservers.net  gpg: key A88D21E9: public key "Docker Release Tool (releasedocker) <docker@dotcloud.com>" imported  ......  Setting up aufs-tools (1:3.0+20111101-1ubuntu1) ...  Setting up cgroup-lite (1.1.5) ...  cgroup-lite start/running  Setting up lxc-docker-1.7.1 (1.7.1) ...  docker start/running, process 10483  Setting up lxc-docker (1.7.1) ...  Processing triggers for libc-bin ...  ldconfig deferred processing now taking place

此命令会把Docker官方提供的最新版本的软件仓库替换Ubuntu的相应仓库。有一点要注意,采用这种方式进行安装,Docker的软件包名应该叫lxc-docker。此时,Docker命令的名字还是docker。而采用之前上面的安装方式,Docker命令的名字应该叫docker.io。

2、再升级Docker

# sudo apt-get update && sudo apt-get upgrade

3、添加用户权限

如果不是root用户的的操作,可以添加一个用户到Docker用户组,这样操作Docker时无需使用sudo命令。可以这样:

# sudo gpasswd -a USER docker

4、检查Docker的安装

# docker version  Client version: 1.7.1  Client API version: 1.19  Go version (client): go1.4.2  Git commit (client): 786b29d  OS/Arch (client): linux/amd64  Server version: 1.7.1  Server API version: 1.19  Go version (server): go1.4.2  Git commit (server): 786b29d  OS/Arch (server): linux/amd64

5、列出正在运行的容器

# docker ps  CONTAINER ID        IMAGE               COMMAND             CREATED             STATUS              PORTS               NAMES

6、列出所有的容器(包括正在运行的容器和已经退出的容器)

# docker ps -a

7、列出本地(已下载的和本地创建的)镜像

# docker images

8、从镜像中运行一个新实例容器

# docker run

9、停止一个容器

# docker stop

来自: http://blog.csdn.net/chszs/article/details/48224153