本篇文章主要讲解Docker中一些常见的命令。本机演示环境使用的是Docker Desttop和PowerShell,使用CMD命令行工具也可以。
一、Docker容器信息
1、查看docker容器版本
使用下面的命令查看docker容器的版本信息:
docker version
如下图所示:
2、查看docker容器信息
使用下面的命令查看docker容器信息
docker info
如下图所示:
3、查看docker容器帮助
有时候我们可能忘记了docker的某些命令,通过下面的命令,可以查看帮助信息,会列出所有的docker命令:
docker --help
如下图所示:
由于命令太多,一屏显示不了,这里的截图只是一部分 。
二、镜像操作命令
这里讲解对docker镜像的一些操作命令。
1、查看镜像
使用下面的命令可以查看本地的所有镜像
docker images
如下图所示:
下面的命令可以查看docker的中间镜像层
docker images -a
如下图所示:
我们也可以只查看镜像的ID
#只查看镜像ID docker images -q #含中间镜像层 docker images -qa
如下图所示:
docker images是查看本地所有的镜像,可以使用下面的命令查看某一个具体镜像的信息,后面跟上镜像名称即可:
docker images 镜像名称
如下图所示:
更多的镜像信息可以使用帮助命令:
docker images --help
如下图所示:
2、搜索镜像
搜索某一个镜像,比如Redis镜像:
docker search Redis
3、镜像下载
docker hub提供了一个hello-world镜像,我们下载官方最新镜像:
docker pull hello-world
如下图所示:
上面的命令后面没有跟tag信息,相当于下载最新的镜像,跟下面的命令一样
docker pull hello-world:latest
下载完成以后查看hello-world镜像
docker images hello-world
如下图所示:
如果要下载特定的镜像,只需要在镜像后面加上tag信息即可。
4、删除镜像
使用下面的命令删除单个镜像:
docker rmi hello-world
如下图所示:
错误信息提示hello-world镜像正在被使用,可以使用下面的强制删除命令:
docker rmi -f hello-world
如下图所示:
可以看到:hello-world镜像被强制删除了,我们在查看本地镜像的时候,就没有hello-world镜像了。
5、生成镜像
生成镜像需要使用Dockerfile文件,然后使用下面的命令就可以根据Dockerfile生成镜像:
docker build -t 镜像名称:tag .
比如生成一个asp.net core的镜像:
注意:最后的英文状态下面的“.”不能省略。
三、容器操作相关命令
1、容器启动
使用下面的命令可以运行容器:
docker build --name=aspnetcoredocker -p 7707:80 -d aspnetcoredocker
- --name :指定容器名称。
- --p :指定容器端口。
- --d :指定容器后台运行。
如下图所示:
2、查看容器
查看正在运行的容器:
##查看
docker ps
如下图所示:
查看所有容器,包括正在运行和已经停止运行的容器:
docker ps -a
如下图所示:
3、容器的停止与启动
使用下面的命令可以启动一个容器:
docker start 容器名称
上面的例子中,firstdocker容器是停止的,我们启动firstdocker容器,如下图所示:
使用下面的命令停止一个运行中的容器:
docker stop 容器名称
我们把firstdocker容器停止,如下图所示:
还可以重新启动容器:
docker restart 容器名称
我们重新启动firstdocker容器:
4、删除容器
使用下面的命令删除容器
docker rm 容器名称
假如我们删除firstdocker容器,如下图所示:
这时报错了,提示我们不能删除正在运行中的容器,我们要先停止容器,然后在删除:
我们还可以使用下面的命令强制删除正在运行中的容器:
docker rm -f 容器名称
比如我们强制删除正在运行中的firstdocker容器:
5、容器日志
使用下面的命令可以查看正在运行中的容器的日志:
docker logs 容器名称
假如我们查看aspnetcoredocker容器的日志,如下图所示: