1. 帮助命令

1.1 docker version

显示docker版本信息

1.2 docker info

显示docker详细信息

1.3 docker help

docker帮助

2. 镜像命令

2.1 docker images

显示本地的镜像信息
docker images -a:显示所有镜像(包含中间镜像层)
docker images -q:只显示当前镜像的IMAGE ID
docker images -qa:上面两个组合使用
docker images --digests:显示镜像摘要信息
docker images --no-trunc:显示完整的镜像信息

2.2 docker search

在docker hub上面查找镜像信息
比如:docker search tomcat
docker search -s 30 tomcat:显示star数量超过30的tomcat备选
docker search --no-trunc:显示完整镜像摘要信息
docker search --automated:只显示自动构建的镜像信息

2.3 docker pull

从Docker镜像源仓库中,向本地镜像库中拉取(下载)镜像。
docker pull tomcat:下载tomcat到docker中。

2.4 docker rmi

从本地镜像库中删除某个镜像
docker rmi hello-world:删除hello-world镜像
docker rmi -f hello-world:强制删除hello-world镜像

2.5 docker push

将镜像上传到镜像仓库。示例请见:http://www.moonlightgate.com/archives/270

2.6 docker commit

向本地仓库提交镜像

docker commit -m="描述信息" -a="作者信息" 容器ID 目标镜像名:[标签名]

比如:

docker commit -a="Leon" -m="firstcommit" firsttom royotech/secondtom:1.2
//royotech/secondtom:1.2 意思是 命名空间/镜像名:TAG内容

2.7 docker build

根据Dockerfile构建新的镜像,具体方法见:http://www.moonlightgate.com/archives/267

3. 容器命令

3.1 新建并启动容器

docker run [-OPTIONS] IMAGEID [COMMAND][ARG...]

[OPTIONS]
--name="容器新名字":为容器制定一个名称;
-d:后台运行容器,并返回容器ID,即启动守护式容器;
-i:以交互模式运行容器,通常与-t同时使用;
-t:为容器重新分配一个伪输入终端,通常与-i同时使用;
-P:随机映射端口;
-p:指定端口映射,有以下四种格式:
    - ip:hostPort:containerPort
    - ip::containerPort
    - hostPort:containerPort
    - containerPort

例如1:启动交互式容器:

docker run -it centos

file
例如2:启动守护式容器:

docker run -d centos

例如3:在新建容器的时候给新容器命名

docker run --name=firstdocker -it centos

例如4:后台运行tomcat容器

docker run -d -p 8888:8080 tomcat

例如5:已交互式的方式运行tomcat容器,并映射容器内的Tomcat端口8080至本机Docker的8888端口

docker run -it -p 8888:8080 tomcat

这时就可以通过Docker的IP地址:8888端口访问容器内的tomcat了。

注:关于端口映射后无法在主机访问的问题,请参考:http://www.moonlightgate.com/archives/265

3.2 列出当前所有正在运行的容器

dock ps [-OPTIONS]
-a:列出当前所有正在运行的容器+最近运行过的容器。
-l:显示最近创建的容器。
-n:显示最近n个创建的容器。
-q:静默模式,只显示容器编号。
--no-trunc:不截断输出。

如果运行的时候不加参数,

dock ps

则默认显示当前正在运行的容器。

3.3 退出容器

停止容器并退出:

exit

不停止容器退出:

ctrl+按P+再按Q

3.4 启动容器

docker start 容器ID或容器名

3.5 重启容器

docker restart 容器ID或容器名

3.6 停止容器

docker stop 容器ID或容器名

3.7 强制停止容器

docker kill 容器ID或容器名

3.8 删除已经停止的容器

docker rm 容器ID或容器名

或强制删除

docker rm -f 容器ID或容器名

3.9 查看容器日志

docker logs -f -t --tail 容器ID
-f:动态追加最新的日志
-t:加入时间戳
--tail:最后多少条

比如以追加和显示时间的方式、打印某容器的最后3条日志:

docker logs -f -t --tail 3 容器ID或容器名

3.10 查看容器内运行的进程

docker top 容器ID

3.11 查看容器内部的细节

docker inspect 容器ID

3.12 可以在不进入容器的情况下,在容器里执行命令并返回结果

docker exec -t 容器ID 需要执行的命令

如果需要进入容器,则可以使用以下命令:

docker exec -t 容器ID /bin/bash

3.13 进入容器,通过命令进行交互

进入容器,执行命令:

docker attach 容器ID

如果容器正在执行命令,比如tomcat,则此种方式无法进入命令行,还需要使用exec方式才能进入命令行。

3.14 从容器内复制文件到主机上

docker cp 容器ID:路径/文件 主机路径/文件

发表评论

邮箱地址不会被公开。 必填项已用*标注