docker镜像和容器介绍

1、介绍

docker有三个重要概念,仓库Repository,镜像Image和容器Container。

(1)容器

一个容器对应一个可用的程序。可能是简单的程序,比如hello world。也可能是知名的应用,比如mysql、tomcat。甚至可能是操作系统,比如linux。

docker容器的运行与常规的运行类似,也会占用docker所在主机的cpu资源、内存资源、硬盘资源,以及端口资源等。如果不考虑docker容器版本的可能优化,其甚至会因为docker而多出一部分消耗。

docker容器各自是相对独立的环境,一个docker容器内所进行的配置或端口占用并不影响另一个docker容器内的配置或端口占用。

但是,如果docker容器需要与外部环境通信,比如tomcat对外提供服务,那么就要将需要的通信docker容器内的端口映射到外部主机的端口。这里的外部主机端口应该是未被占用的,否则会无法映射、无法通信。

(2)镜像

为了能够快速创建可用的容器,进行部署,借用游戏存档的概念,可以创建一系列的静态资源,打包发布,然后下载快速解压部署。

  • 镜像可以是很小的程序,比如hello world。也可以是知名的应用,比如tomcat。还可以是操作系统,比如linux。可以是开发的网站应用。
  • docker官方提供了一系列的常用的应用镜像,其它第三方也有提供自己的docker版本镜像资源,开发者自己也可以制作镜像并发布
  • 一个镜像可以创建多个容器

(3)仓库

仓库是用于存放镜像资源的地址,对外提供下载服务

2、基本查看命令

2.1 info

  • 展示docker的信息,包括统计的容器和镜像信息、docker所在系统的信息、docker全局的信息等

2.2 images

列出镜像。包括以下信息:

  • repository 仓库名
  • tag 标签名,实际就是版本名称,常见的是latest表示最新版本
  • image id 镜像编号
  • created 创建时间。指的是其在整个互联网的创建
  • size 镜像的大小,自带单位

# 过滤,针对image的各项进行匹配,大小写敏感
docker images vul*

2.3 ps

列出容器。包括以下信息:

  • container id 容器编号
  • image 镜像
  • command 备注
  • created 创建时间。指的是其在整个互联网的创建
  • status 状态。指在当前计算机中开启/关闭,以及持续时间
  • port 映射端口与协议,前者是docker所在主机,后者是各容器内状态
  • names 容器名称

# 显示所有容器(默认显示刚刚运行的)
docker ps -a
docker ps --all
# 显示正在运行或者刚刚运行的
docker ps
# 过滤显示
docker ps -f,--filter filter
# go语言模板进行过滤设置
docker ps --format string
# 显示最近n个创建的容器(包括所有状态)(默认值为-1)
docker ps -n,--latest
# 只显示容器id
docker ps -q,--quiet
# 显示总共的文件大小
docker ps -s,--size

2.4 stats

显示容器资源使用情况统计信息的实时流

2.5 inspect

docker inspect <容器id>
  • 查看更详细的容器信息

2.6 port

docker port <容器id>
  • 列出容器的端口映射或特定映射

posted @ 2023-07-14 20:22  挖洞404  阅读(102)  评论(0编辑  收藏  举报