登陆

Docker命令行入门大全:这18条,你不得不知

admin 2020-02-14 287人围观 ,发现0个评论

Docker有成千上百万的指令行。因而Docker文档内容非常丰厚,一同又让刚入门的新手感到手足无措。在本文中,我将要点介绍运转Docker的要害指令。

前 言

Docker镜像是由DoDocker命令行入门大全:这18条,你不得不知ckerfile和一些必要的依靠项组成的,Docker容器是动态的Docker镜像。要运用Docker指令,首要需求知道您是在处理镜像仍是容器。一旦你知道你所处理的是镜像仍是容器之后,你才可以找到正确的指令。

指令的共性

你需求知Docker命令行入门大全:这18条,你不得不知道一些关于Docker指令的规则:

  • Docker CLI办理指令以docker最初,然后是空格,接着是办理类别,然后是空格最终是指令。例如,docker container stop这一指令可以中止容器。
  • 引证特定容器或镜像的指令需求该容器或镜像的称号或ID。

举个比如,docker container run my_app 是用于构建和运转名为my_app的容器的指令。在本文示例中,我将运用称号my_container来引证通用容器。同理,my_image、my_tag也是如此。

我将独自供给指令和通用标志。前面有两个破折号的标志是标志的全名。带有一个破折号的标志是完好标志称号的缩写。例如,-p是--port标志的缩写。

本文的方针是让您牢牢记住这些指令和符号,并期望您可以在创立容器或构建镜像的时分可以将本攻略作为参阅。本攻略适用于Linux和Docker Engine版别18.09.1以及API版别1.39。

咱们先了解容器指令然后再看镜像指令。

容器指令

运用 docker container my_command

  • create — 从镜像中创立一个容器
  • start — 发动一个已有的容器
  • run — 创立一个新的容器而且发动它
  • ls — 列出正在运转的容器
  • inDocker命令行入门大全:这18条,你不得不知spect — 检查关于容器的信息
  • logs — 打印日志
  • stop — 高雅中止正在运转的容器
  • kill — 当即中止容器中的首要进程
  • rm — 删去现已中止的容器


镜像指令

运用 docker image my_command

  • build — 构建凤隐天下一个镜像
  • push — 将镜像推送到长途镜像库房中
  • ls — 列出镜像
  • history — 检查中心镜像信息
  • inspect — 检查关于镜像的信息,包含层
  • rm — 删去镜像


容器&镜像

  • docker version — 列出关于Docker客户端以及服务器版别的信息
  • docker login — 登录到Docker镜像库房
  • docker system prune —Docker命令行入门大全:这18条,你不得不知 删去一切未运用的容器、网络以及无称号的镜像(虚悬镜像)


容器指令详解

发动容器

术语“创立”,“开端”和“运转”在日常日子中都具有类似的语义,但每个都是一个独立的Docker指令,用于创立并/或发动容器。让咱们先看看创立容器的指令。

docker container create my_repo/my_image:my_tag — 从一个镜像中创立容器

我将在下文中把my_repo/my_image:my_tag缩写为 my_image。

你可以经过传递许多标志来create。

docker container create -a STDIN my_image

-a是—attach的缩写,指将容器衔接到STDIN,STDOUT或STDERR。

已然咱们现已创立了一个容器,那么让咱们来发动它。

docker container start my_container — 发动一个已有的容器

请注意,容器可以经过容器的ID或容器的称号来引证。

docker container start my_container

已然你知道怎么创立和发动一个容器,让咱们来看看最常见的Docker指令。它将create和start结合到一个指令中:run。

docker container run my_image — 创立一个新容器而且发动它。这一指令相同也有许多选项。让咱们看看其间几个。

docker container run -i -t -p 1000:8000 --rm my_image

-i是—interactive的缩写,即便未衔接,也要坚持STDIN翻开;-t是—tty的缩写,它会分配一个伪终端,将终端与容器的STDIN和STDOUT衔接起来。

你需求指定-i和-t 经过终端shell与容器交互。

-p是 –port的缩写。端口是与外部国际的接口。1000:8000将Docker端口8000映射到核算机上的端口1000。假如你有一个app输出了一些内容到浏览器,你可以将浏览器导航到localhost:1000而且检查它。

--rm主动删去中止运转的容器。

让咱们再来看看run的几个比如。

docker container run -it my_image my_command

sh是你可在运转时指定的指令,它将在容器内部发动shell会话,你可以经过终端与其交互。关于Alpine镜像,sh优于bash,由于Alpine镜像不随bash一同装置。键入exit以完毕交互式shell会话。

请注意,咱们将-i和-t结合为-it。

docker container run -d my_image

-d是—detach的缩写,指在后台运转容器,答应您在容器运转时将终端用于其他指令。

检查容器状况

假如你有许多运转中的Docker容器而且想要找到与哪一个互动,那么你需求列出它们。

docker container ls — 列出运转中的容器,一同供给关于容器有用的信息。

docker container ls -a -s

-a是--all的缩写,列出一切容器(不仅仅是正在运转中的容器)

-s是—size的缩写,列出每个容器的巨细。

docker container inspect my_container — 检查有关容器的信息

docker container logs my_container — 列出容器日志

中止容器

有时你需求Docker命令行入门大全:这18条,你不得不知中止一个正在运转中的容器,你需求用到以下指令:

docker container stop my_container — 高雅地中止一个或多个正在运转的容器。在容器封闭之前供给默许10秒以完结任何进程。

假如你觉得10秒太长的话,可以运用以下指令:

docker container kill my_container — 当即中止一个或多个正在运转的容器。这就像拔掉电视上的插头相同。但是在大多数情况下,主张运用stop指令。

docker container kill $(docker ps -q)— 中止一切运转中的容器

你需求删去容器可以运用以下指令:

docker container rm my_container — 删去一个或多个容器

docker container rm $(docker ps -a -q) — 删去一切不在运转中的容器

以上便是Docker容器的要害指令。接下来,咱们来看看关于镜像的指令。

镜像指令详解

以下是Docker镜像运用的7条指令

构建镜像

docker image build -t my_repo/my_image:my_tag . 在指定途径或url的Dockerfile中构建一个名为my_image的Docker镜像。

-t是tag的缩写,是告知docker用供给的标签来符号镜像,在本例中,是my_tag

在指令结尾的句号(.)是告知Docker依据当前工作目录中的Dockerfile构建镜像。

当你构建好镜像之后,你想要推送它到长途库房中以便它可以同享而且在有需求的时分被拉取。那么下一个指令非常有用,虽然并非是镜像指令。

docker login — 登录到Docker镜像库房,依据提示键入你的用户名和暗码

docker image push my_repo/my_image:my_tag — 推送一个镜像到库房。

你具有了这些镜像之后,你或许想要检查他们。

检查镜像

docker image ls — 列出你的镜像以及每个镜像的巨细

docker image history my_image — 显现镜像的中心镜像,包含巨细及其创立方法

docker image inspect my_image — 显现关于镜像的细节,包含组成镜像的层

有时分你还需求整理你的镜像。

整理镜像

docker image rm my_image — 删去指定镜像。假如镜像被保存在镜像库房中,那么该镜像在那仍旧可用。

docker image rm $(docker images -a -q) — 删去一切镜像。有必要当心运用这一指令。请注意现已被推送到长途库房的镜像仍然可以保存,这是镜像库房的一个优势。

以上便是大部分与Docker镜像相关的重要指令。

要在运用Docker时检查CLI引证,只需在指令行中输入指令docker即可。Docker文档请参阅:

https://docs.docker.Docker命令行入门大全:这18条,你不得不知com/engine/reference/commandline/cli/

现在你现已把握了运转Docker的要害指令,可以用Docker构建东西了!赶忙上手操作吧!

请关注微信公众号
微信二维码
不容错过
Powered By Z-BlogPHP