imoing

导航

统计
 

Docker常用命令

目录

搜索镜像

从Docker Hub搜索镜像.
COMAND:

$ sudo docker search TERM

OPTIONS:

  
--automated=false     是否仅显示自动创建的镜像  
--no-trunc=false      是否截断输出  
-s, --stars=0         仅显示至少有x颗星的镜像  

示例:

$ sudo docker search centos

获取容器镜像

从Docker Hub下载镜像.
COMAND:

$ sudo docker pull NAME[:TAG]

示例:

$ sudo docker pull centos:latest

创建实例

COMMAND:

$ sudo docker run [OPTIONS] IMAGE [COMMAND] [ARG...]

OPTIONS:
-a, --attach=[] Attach to stdin, stdout or stderr.
关联到标准输入,标准输出或标准错误输出
-c, --cpu-shares=0 CPU限额(相对权重)
--cpuset="" 允许使用的CPU(0-3, 0,1)
-m, --memory="" 内存限额(格式: <数字><单位> 单位 = b, k, m 或者 g)
--cidfile="" 把容器实例ID写入文件
-d, --detach=false 分离模式:后台运行容器并输出容器ID
--dns=[] 自定义DNS服务器
--dns-search 自定义DNS搜索域
-e, --env=[] 设置环境变量
--env-file=[] 从文件读取环境变量
--entrypoint="" 覆盖镜像的默认入口点
--expose=[] 暴露容器的一个端口而不通过主机对外公开
-h, --hostname="" 容器主机名
-i, --interactive=false 即使没有关联也保持标准输入打开
--link 添加到另外一个容器的连接(name:alias)
--lxc-conf (尽在lxc驱动下可以使用) 添加自定义lxc选项
--lxc-conf="lxc.cgroup.cpuset.cpus = 0,1"

--name="" 给容器设置一个名字
--net="bridge" 设置容器网络模式
'bridge':在docker桥接网卡上创建一个新的网络堆栈
'none': 不设置网络连接
'container:<name|id>': 重新使用另外一个容器的网络堆栈
'host': 在容器中使用主机的网络堆栈.
注意: host模式给予了容器本地系统服务的完全访问权限
(例如D-bus),因被认为是不安全的.

-P, --publish-all=false 对主机网卡开放所有打开的端口
-p, --publish=[] 把容器的一个端口开放给主机
格式: ip:主机端口:容器端口
ip::容器端口
主机端口:容器端口
使用'docker port'命令查看实际的端口映射
--privileged=false 给容器赋予扩展权限
--rm=false 当容器退出时自动移除(与-d参数冲突)
--sig-proxy=true Proxify received signals to the process (even in non-tty
mode). SIGCHLD is not proxied.
-t, --tty=false 分配一个伪终端
-u, --user="" 用户名或UID
-v, --volume=[] 把卷挂载到制定目录(例如,从主机挂载: -v /host:/container
从容器: -v /container)
--volumes-from=[] 从特定容器挂载卷
-w, --workdir="" 容器内的工作目录

创建一个容器并打开一个shell
$ sudo docker run -t -i centos:latest /bin/bash

查看容器列表

COMMAND:

$ sudo docker ps [OPTIONS]

OPTION:
-a, --all=false 显示所有的容器.默认只显示运行中的容器
--before="" 只显示在创建某个容器之前的容器,包括未运行的容器
-l, --latest=false 仅显示最后一个创建的容器,包括未运行的容器
-n=-1 显示最后n个创建的容器,包括未运行的容器
--no-trunc=false 不截断输出
-q, --quiet=false 仅显示容器的数值ID
-s, --size=false 显示大小
--since="" 仅显示在创建某个容器之后的容器,包括未运行的容器

创建镜像

从改变的容器实例中创建镜像

COMMAND:
$ sudo docker commit [OPTIONS] CONTAINER [REPOSITORY[:TAG]]
OPTION:
-a, --author="" 作者(例如: "艾莫名 <cimoing&gmail.com>")
-m, --message="" 提交注释信息
-p, --pause=true 提交时暂定容器

使用Dockfile创建镜像

COMMAND:
$ sudo docker build [OPTIONS] PATH | URL | -
需要创建Dockerfile文件.具体可见Dockerfile
OPTION: --force-rm=false 强制删除媒介容器,即使镜像创建失败也删除
--no-cache=false 当构建容器时不使用缓存
-q, --quiet=false 创建时不显示详细输出
--rm=true 当镜像创建成功后删除媒介容器
-t, --tag="" 当镜像创建成功后设置资源库名称(和一个可选的tag)

移除一个或多个容器实例

COMMAND:
$ sudo docker rm [OPTIONS] CONTAINER [CONTAINER...]

移除所有未运行的容器:
$ sudo docker rm sudo docker ps -aq

删除镜像

COMMAND:
$ sudo docker rmi IMAGE [IMAGE...]

删除一个镜像:
$ sudo docker rmi centos:latest

posted on 2014-07-11 16:03 艾莫明 阅读(...) 评论(...) 编辑 收藏