Docker常见命令
Docker容器命令是Docker生态系统中非常重要的一部分,它们允许用户管理容器的生命周期、操作容器内的数据、以及与容器进行交互。以下是一些常用的Docker容器命令及其简要说明:
- docker run:创建并启动一个新的容器。这个命令可以指定容器的名称、镜像、端口映射、数据卷挂载等选项。例如:bashdocker run -d --name mycontainer -p 8080:80 nginx。这将创建一个名为mycontainer的新容器,使用nginx镜像,并将容器的80端口映射到主机的8080端口,以守护模式运行。
- docker start:启动一个已经停止的容器。例如:bashdocker start mycontainer。这将启动名为mycontainer的容器。
- docker stop:优雅地停止一个或多个正在运行的容器。例如:bashdocker stop mycontainer。这将停止名为mycontainer的容器。
- docker restart:重启一个或多个容器。例如:bashdocker restart mycontainer。这将重启名为mycontainer的容器。
- docker kill:强制停止一个或多个容器。例如:bashdocker kill mycontainer。这将立即停止名为mycontainer的容器。
- docker rm:删除一个或多个容器。例如:bashdocker rm mycontainer。这将删除名为mycontainer的容器。注意,容器必须先停止才能被删除。
- docker exec:在运行的容器内部执行命令。例如:bashdocker exec -it mycontainer /bin/bash。这将打开一个交互式shell,进入名为mycontainer的容器内部。
- docker logs:查看容器的日志。例如:bashdocker logs mycontainer。这将显示名为mycontainer的容器的日志输出。
- 这些命令是Docker容器管理的基本工具,掌握它们将帮助你更有效地使用Docker。
Docker images
在Docker中,docker images tag是一个用于管理镜像标签的命令。它允许用户查看、添加、删除或修改镜像的标签。以下是关于docker images tag的一些核心操作:
查看镜像标签:
使用docker images命令可以列出本地仓库中的所有镜像,包括它们的REPOSITORY、TAG、IMAGE ID等信息。可以通过docker images REPOSITORY:TAG来查看特定镜像的详细信息,包括标签。
举例:docker images | awk '{print $1}' | grep ‘a’
查看docker镜像标签中含有字母a的全部镜像。
添加镜像标签:
使用docker tag命令可以给镜像打上新的标签。例如,docker tag IMAGE_ID REPOSITORY:TAG将给镜像IMAGE_ID添加一个新的标签REPOSITORY:TAG。
标签是镜像的别名,用于标识镜像的不同版本或用途。
删除镜像标签:
使用docker rmi命令可以删除镜像的标签。例如,docker rmi REPOSITORY:TAG将删除镜像REPOSITORY:TAG的标签。
看到一篇“Docker 技巧:删除 Docker 容器和镜像”其中提到删除标签为none的镜像的方法,其中用到了awk,就去查了下,下面举例说明:
docker rmi $(docker images | awk '$1 == "<none>" && $2 == "<none>" {print $3}')
注意,删除标签并不会删除镜像本身,只是移除标签与镜像之间的关联。
修改镜像标签:
可以通过先删除原有标签,再添加新标签的方式来修改镜像的标签。
例如,先执行docker rmi REPOSITORY:TAG,再执行docker tag IMAGE_ID REPOSITORY:NEW_TAG。
镜像命名规则:
镜像名称通常由两部分组成:仓库源和标签。例如,REPOSITORY:TAG。
标签默认为latest,如果需要指定其他版本,需要明确注明,例如REPOSITORY:v1.0。
镜像ID与标签的关系:
镜像ID是镜像的唯一标识,而标签是镜像的名称,可以有多个,但不会重复。
一个镜像可以有多个标签,但一个标签只能指向一个镜像。
通过上述操作,用户可以有效地管理和使用Docker镜像,确保镜像的正确标识和版本控制。这些操作对于维护一个健康的Docker环境至关重要。