docker常用命令

心不动则不痛 提交于 2020-02-10 15:43:23

docker images

#查看拥有的镜像
docker images

在这里插入图片描述

docker search/docker pull/docker rmi

#默认从Docker Hub查找镜像
docker search [OPTIONS] TERM

–automated :只列出 automated build类型的镜像;

–no-trunc :显示完整的镜像描述;

-s :列出收藏数不小于指定值的镜像。

#从镜像仓库中拉取或者更新指定镜像
docker pull [OPTIONS] NAME[:TAG|@DIGEST]

-a :拉取所有 tagged 镜像

–disable-content-trust :忽略镜像的校验,默认开启

#删除本地镜像
docker rmi [OPTIONS] IMAGE [IMAGE...]

-f :强制删除;

–no-prune :不移除该镜像的过程镜像,默认移除;
示例,先搜索stars大于10的镜像,然后下载hello-world镜像,最后删除它:
在这里插入图片描述

docker ps/docker ps -a

#查看正在运行的容器
docker ps
#查看所有运行过的容器
docker ps -a 

在这里插入图片描述

docker run

#运行镜像,并生成容器实例
docker run [OPTIONS] IMAGE [COMMAND] [ARG...]
-d: 后台运行容器,并返回容器ID;

-e username="ritchie": 设置环境变量;

-i: 以交互模式运行容器,通常与 -t 同时使用;

-P: 随机端口映射,容器内部端口随机映射到主机的高端口

-p: 指定端口映射,格式为:主机(宿主)端口:容器端口

-t: 为容器重新分配一个伪输入终端,通常与 -i 同时使用;

--name="nginx-lb": 为容器指定一个名称;

--volume , -v:	绑定一个卷

示例,启动mysql。设置名称为mysql,外部端口号为3306,登录密码为123456,后台运行:

docker run --name mysql -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 -d mysql

docker exec

docker exec [OPTIONS] CONTAINER COMMAND [ARG...]

-d :分离模式: 在后台运行

-i :即使没有附加也保持STDIN 打开

-t :分配一个伪终端
示例,进入mysql容器,用密码登录,选择mysql数据库,然后查询person列表:

docker exec -it mysql bash

在这里插入图片描述
quit退出mysql,exit退出容器。
在这里插入图片描述

docker start/docker stop/docker rm

#启动一个或多个已经被停止的容器
docker start [OPTIONS] CONTAINER [CONTAINER...]

在这里插入图片描述

#停止一个运行中的容器
docker stop [OPTIONS] CONTAINER [CONTAINER...]

在这里插入图片描述

#删除一个或多个容器
docker rm [OPTIONS] CONTAINER [CONTAINER...]

-f :通过 SIGKILL 信号强制删除一个运行中的容器。

-l :移除容器间的网络连接,而非容器本身。

-v :删除与容器关联的卷。
示例,删除deme镜像的容器:
在这里插入图片描述

docker inspect

#获取容器/镜像的元数据
docker inspect [OPTIONS] NAME|ID [NAME|ID...]

-f :指定返回值的模板文件。

-s :显示总的文件大小。

–type :为指定类型返回JSON。
在这里插入图片描述

docker info/docker version

#显示 Docker 系统信息,包括镜像和容器数
docker info [OPTIONS]

在这里插入图片描述

#显示 Docker 版本信息
docker version [OPTIONS]

在这里插入图片描述

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!