docker的常用命令

docker常用命令主要有以下的几种

  1. run 命令
  2. 容器管理 命令
  3. 镜像管理 命令
  4. docker 其他命令

run命令

— a ,—attach(连接)
  1. 指定数据流连接终端,默认stdoutstderrr两个,交互模式下,数据流未指定,stdin也会被连接至终端。

—d ,—detach (分离)
  1. 容器后台运行

—i,—interactive(交互)
  1. 一般与-t 一起使用,保持stdin的打开,例如,docker run -it imagename /bin/bash,这样你就能进入容器内与之交互。

—restart 重启
  1. --restart no :代表永远不尝试重新启动容器<br /> --restart always :代表不管容器本身什么状态,都会尝试去重启容器<br /> --restart on-failureintnum :代表容器退出状态不为0时,尝试重启容器,如果加入可选参数intnum,代表尝试重启intnum次数容器。

—rm
  1. 容器退出时自动删除容器,与--d 分离选项互斥。

—t ,—tty

  1. 分配一个伪终端,常配合--i 交互选项,用来与容器交互

—e ,—env(环境变量)

  1. 设置容器内的环境变量,也可以用--env-file通过文件传入环境变量

-h ,—hostname

  1. 设置容器主机名字,如果不设置,docker 会自动分配主机名字

-v ,—volume

  1. 设置容器数据卷,可以不设置,默认docker下面的volume文件夹会有自动分配的数据卷,也可以使用主机目录绑定容器目录,这样主机目录中文件修改,容器中的文件也会修改,数据卷属于主机文件系统,而非联合文件系统中的。

-volumes-from

  1. 挂载指定容器的数据卷,通常用于数据容器

—expose

  1. 指定容器使用的端口或者端口范围,但不会打开。

—link

  1. 建立内部网络接口,与指定容器相连。

—p,—publish

  1. 发布容器的端口,使用docker port查看容器的端口。

—entrypoint

指定参数指定为容器的入口,其优先级会最高,会覆盖docker中的entrypoint

-u ,user

指定容器的用户,其优先级会高于docker中的user

-w —workdir

  1. 指定参数路径是设置为容器的工作目录,覆盖,dockerworkdir路径。

容器

docker attach

  1. docker attach 允许用户查看容器主进程并与之交互。

docker create

  1. 创建容器但不使用。

docker cp

  1. 在容器与主机之间复制文件与目录。

docker exec

  1. 进入容器,执行命令,docker exec -it containerid/name /bin/bash .....exit退出

docker kill

  1. 发送信号给容器主进程,停止容器

docker pause

  1. 暂停容器中的所有进程,进程无法接受到任何关于被暂停的消息,可以通过docker unpause 的命令重启,docker pausedocker stop 不一样,docker stop,停止是所有进程,但是进程能够接受到信号。

docker restart

  1. 重启一个或者多个容器,重启,先stop 然后start 有可选参数,-t .他是指在被SIGTERM杀掉之前,让容器有多少时间关闭。

docker rm

  1. 删除一个或者多个容器,返回被删除容器的id,默认只能删除停止的容器,可选参数-f 可以删除运行的容器,对于删除数据卷volume ,默认不删除,可选参数-v 是删除数据卷。但是不会删除有其他关联关系的数据卷,比如删除的书卷被其他的容器关联,此时是删除不了的

docker stop

  1. 停止一个或者多个容器,且执行之后容器的状态变为"已退出",可选参数-t ,他是指在被SIGTERM杀掉之前,让容器有多少时间关闭。

docker start

  1. 启动一个或者多个已经停止或者被docker create 的从未启动的容器。

容器信息

docker diff

  1. 对比容器所使用的镜像,显示容器的文系统的变化

docker events

  1. 打印守护进程的实时时间。

docker inspect

  1. 获取容器或者镜像的详细信息,包括配置,联网,数据卷等信息

docker logs

  1. 输出容器在STDERR,以及STDOUT的内容

docker ps

  1. 提供容器中运行的高阶信息,可选参数-a展示所有包括已经停止的容器,,可选参数-q,过滤消息,只输出id.

docker port

  1. 查看容器的端口映射信息,包括内部端口以及协议。

docker top

  1. 提供容器运行中进程的信息。

镜像

docker build

  1. 根据dockerfile去创建image ,一般命令是 docker build imagename contextPath ,这个contextPath,代表上下文路径。

docker commit

  1. 创建镜像从容器,一般用法docker commit container imagename tag,值得注意的是使用commit会将运行的容器暂停,使用 --pause false.对于创建container,建议使用build.

docker export

  1. 导出容器的文件系统,以tar的归档格式,输出STDOUT.切记只导出文件系统,元数据,配置信息会被丢弃。

docker import

  1. 从含有文件系统的归档文件创建镜像,其生成的镜像只有一层,且配置信息会被丢失

docker history

  1. 输出镜像的每一层的信息。

docker images

  1. 列出本地所有的镜像以及其基本信息,docker images -q 只显示镜像id

docker rmi

  1. 删除一个或者多个镜像。

docker login

  1. 登录dockerhub

docker logout

  1. 退出登录

docker pull

  1. 拉取镜像

docker push

  1. 推送镜像到仓库

docker search

  1. 搜索docker hub的镜像