【Docker】镜像容器命令全解析
文章目录
- 1.前言
- 2.Docker镜像命令
- 2.1 搜索镜像
- 2.2 下载镜像
- 2.3 列出本地的所有镜像
- 2.4 删除镜像
- 3.Docker容器命令
- 3.1 创建并启动一个新的容器
- 3.2 列出正在运行的容器
- 3.3 停止容器
- 3.4 启动容器
- 3.5 重启容器
- 3.6 查看容器资源使用情况
- 3.7 查看容器日志
- 3.8 进入容器
- 3.9 删除容器
1.前言
如今的软件开发和部署领域,Docker 以其强大的容器化技术成为了众多开发者的得力工具。接下来为大家介绍 Docker 的镜像命令和容器命令
2.Docker镜像命令
2.1 搜索镜像
docker search [镜像名]
例如在Docker中搜索nginx镜像:
docker search nginx
搜索结果会以列表的形式展示
- NAME: 镜像的名字
- DESCRIPTION: 镜像的描述
- STARS: 用户对 Docker 镜像的点赞或收藏数量
- OFFICIAL: 代表是不是官方发布的镜像,如果是就是OK
2.2 下载镜像
docker pull [镜像名]
默认下载镜像的版本是latest,也就是最新版本
下载指定版本的镜像:
docker pull [镜像名]:[版本(标签)]
如果要下指定版本的镜像就不推荐使用docker search命令搜索镜像,而是去docker hub上面去进行搜索
以redis举例,输入框输入redis并搜索
进入Redis,这里有一个Tags
在Tags下面可以看到很多版本,并提供了相关的下载命令
2.3 列出本地的所有镜像
docker images
- REPOSITORY: 镜像的名字
- TAG: 镜像的标签(版本)
- IMAGE ID : 镜像的唯一标识符
- CREATED: 创建时间
- SIZE: 镜像的大小
2.4 删除镜像
指定镜像的名称和版本删除镜像
docker rmi [镜像名]:[版本]
使用镜像的ID来删除镜像
docker rmi IMAGE ID
例如,要删除一个名为myimage的镜像,可以输入docker rmi myimage
。
如果要删除多个镜像,可以将镜像 ID 或名称用空格隔开,如docker rmi image1 image2
。
删除镜像前,需要保证没有使用这个镜像生成的容器
3.Docker容器命令
3.1 创建并启动一个新的容器
docker run
如果对命令不了解,可以输入命令 加上 --help
来查看命令的用法
例如:
启动镜像
启动镜像时,如果没指定版本号,默认就是启动最新的版本的镜像.如果没有在这镜像,会去下载然后启动镜像.
nginx这个容器启动时,会阻塞控制台,很正常不用担心.在打开一个控制台即可
如果不想让容器阻塞控制台,可以使用后台启动的方式进行启动
docker run -d --name [自定义名称] [镜像名]
如果想访问docker启动的nginx,是无法访问的.docker启动的nginx容器,实际上是又创建了一个操作系统,很小,只保留了能够运行的环境.如果想要使用云服务器的IP进行访问,则需要进行端口映射.将容器的端口和云服务器端口进行映射.
docker run -p 外部主机端口:容器端口 [镜像名]
这些选项可以组合使用例如:
此时就可以通过IP+端口访问nginx容器了
⭐这里需要保证云服务器的端口开放了
3.2 列出正在运行的容器
docker ps
- CONTAINER ID: 容器的唯一标识符
- IMAGE: 创建容器所使用的镜像的名称和标签
- COMMAND: 启动容器时运行的命令
- STATUS: 容器的状态
- PORTS: 映射到主机的端口
- NAMES: 容器的名称
如果前台启动使用Ctrl C
退出,就相当于停止容器,使用再使用docker ps就不会显示
如果想使用查看已经停止的容器,可以加上 -a
选项,列出所有的容器
docker ps -a
3.3 停止容器
docker stop
这个可以写容器的ID,也可以写容器的名字.甚至容器的ID也可以只写几位就可以了,只要能和其它容器区分就可以了
3.4 启动容器
docker start
3.5 重启容器
docker restart
3.6 查看容器资源使用情况
docker stats
3.7 查看容器日志
docker logs
3.8 进入容器
docker exec
一般使用这个命令时会加上 -it
选项,使用交互模式进入容器,可以输入一些命令去执行
docker exec -it [容器名或容器ID] /bin/bash
可以看到容器有自己的文件系统,其实就是一个Linux操作系统,只保留了nginx的运行环境.
接下来我们修改nginx的默认页面
容器为了轻量级,可以看到连vim命令都没有.可以使用echo命令来修改
再次访问nginx容器可以看到内容已经被修改了
退出容器可以输入exit
3.9 删除容器
docker rm
删除容器前,需要先停止这个容器.
当然如果觉得麻烦,可以使用docker rm -f
来强制删除