导语
本篇文章是将一些常用的Docker命令记录下来,足够平时的开发使用了。
1,Docker环境信息
info 命令
用于检测Docker是否正确安装,一般结合docker version命令使用。
$ docker info
version 命令
查看docker的版本号。
$ docker version
2,容器基础运维操作
attach 命令
docker attach命令对应开发者很有用,可以连接到正在运行的容器,观察容器的运行状况,或与容器的主进程进行交互。
$ docker attach 容器id
inspect 命令
用于查看镜像和容器的详细信息,默认会列出全部信息,可以通过–format参数来指定输出的模板格式,以便输出特定信息。
$ docker inspect [OPTIONS] NAME|ID [NAME|ID...]
OPTIONS说明:
- -f :指定返回值的模板文件
- -s :显示总的文件大小
- –type :为指定类型返回 JSON
查看容器的信息 (ps)
docker ps 命令 :可以查看容器的
CONTAINER ID
、NAME
、IMAGE NAME
、端口开启及绑定、容器启动后执行的COMMNAD
。
$ docker ps # 默认显示当前正在运行中的container
$ docker ps -a # 查看包括已经停止的所有容器
$ docker ps -l # 显示最新启动的一个容器(包括已停止的)
3,镜像相关
列出机器上的镜像
$ docker images
在docker index搜索image (search)
$ docker search 镜像名
从docker registry server 中下拉image或repository(pull)
$ docker pull centos
上面的命令需要注意,在docker v1.2版本以前,会下载官方镜像的centos仓库里的所有镜像,而从v.13开始官方文档里的说明变了:will pull the centos:latest image, its intermediate layers and any aliases of the same id,也就是只会下载tag为latest的镜像(以及同一images id的其他tag)。
也可以明确指定具体的镜像:
$ docker pull centos:centos7
当然也可以从某个人的公共仓库(包括自己是私人仓库)拉取:
$ docker pull seanlook/centos:centos7
如果你没有网络,或者从其他私服获取镜像:
$ docker pull 私服ip地址
推送一个image或repository到registry(push)
$ docker push seanlook/mongo
$ docker push 私服ip地址
Docker build 使用此配置生成新的image
$ docker build [OPTIONS] PATH | URL | -
OPTIONS说明:
-
–build-arg=[] :设置镜像创建时的变量;
-
–cpu-shares :设置 cpu 使用权重;
-
–cpu-period :限制 CPU CFS周期;
-
–cpu-quota :限制 CPU CFS配额;
-
–cpuset-cpus :指定使用的CPU id;
-
–cpuset-mems :指定使用的内存 id;
-
–disable-content-trust :忽略校验,默认开启;
-
-f :指定要使用的Dockerfile路径;
-
–tag, -t : 镜像的名字及标签,通常 name:tag 或者 name 格式;可以在一次构建中为一个镜像设置多个标签。
-
–pull : 尝试去更新镜像的新版本;
给镜像打标签 (tag)
$ docker tag SOURCE_IMAGE[:TAG] TARGET_IMAGE[:TAG]
查看容器中正在运行的进程(top)
$ docker top <container_id/container_name>
小结
本篇文章介绍了Docker的常用命令,由于纯手打,难免会有纰漏,如果发现错误的地方,请第一时间告诉我,这将是我进步的一个很重要的环节。