Docker 理论知识与命令行操作

查看镜像

docker image ls

拉去镜像

docker pull 名字:版本号 

拉去用户的某个仓库下的镜像

docker pull 用户名/仓库/镜像名:版本

启动镜像 -it 表示连接到容器终端

docker container run -it 镜像名:版本 /bin/bash

连接到运行中的容器

docker container exce -it 容器名 /bin/bash

查看运行中的容器

docker container ls

停止容器

docker container stop 容器名或id

获取悬虚镜像

docker image ls --filter dangling=true

删除悬虚镜像

docker image ls prune

删除镜像

docker container rm 容器名

列出所有的容器 -a 表示包括停止的容器

docker container ls -a

启动镜像 -d让容器到后台运行 -p做端口映射将服务器中的8080端口映射到容器中的端口(即springboot项目配置的端口号)端口

docker run -d -p 8080:8085 bootdocker

在这里插入图片描述
containerd:用于容器的生命周期管理,删除、启动、停止等
runc:运行容器,又叫OCI层
Daemon:用于接收客户端的指令,指示containerd进行操作
Docker client:客户端
shim:用户containerd与runc进行解耦,1、保持所有的stdin和stdout流是开启状态,从而当containerd重启时,容器不会因为管道的关闭而终止。2、将容器的退出状态反馈给daemon

docker过滤器
在这里插入图片描述
语法

docker image ls --filter dangling=true

获取镜像列表并格式化输出
.ID – 镜像ID
.Repository – 镜像存储库名称
.Tag – 镜像tag
.Digest – 镜像digest
.CreatedSince – 从镜像创建到现在过去的时间
.CreatedAt – 镜像创建的时间
.Size – 镜像硬盘占用大小

docker image ls --format "{{.ID}}:{{.Repositry}}"

查找指定仓库(NAME)的镜像,可加上is-official=true只显示官方镜像,is-automated=true只显示自动创建的仓库

docker search java --filter "is-official=true"

查看镜像层

docker image inspect java:8

获取镜像摘要

docker image --digests 镜像名

通过摘要下载镜像 为了避免标签重复和运行中容器的遗留问题

docker image pull 镜像名@摘要

获取全部镜像的id列表

docker image ls -q

删除所有镜像

docker image rm -f $(docker image ls -q)

在这里插入图片描述
创建docker镜像
Dockerfile解析
在这里插入图片描述FORM:以alpine作为镜像的基础
LABEL:指定维护者
RUN:指令使用alpine的安装包管理将npm和nodejs安装到镜像中,并新建一个镜像层存储这些内容
COPY:将应用的相关文件上下文复制到了镜像中,并新建一个镜像层来存储
WORKDIR:为尚未执行的指令指定执行的目录
RUN:根据package.json中的配置使用npm安装依赖包,在前文中设置的工作目录中执行,并在镜像中新建镜像层存储相关的依赖文件
EXPOSE:设置相关的端口,将会作为镜像的元数据保存下来,不会新建镜像层
ENTRYPOINT:指定当前镜像的入口程序,将会作为元数据保存在镜像里,不会新建镜像层

构建镜像指令
nocache=true构建镜像时忽略之前的缓存,重新构建镜像,若为false则如果缓存命中的话,就会链接到缓存的镜像执行指令

docker image build 镜像名 --nocache=true

合并镜像
当要构建一个基础镜像以供其他镜像使用的时候,可以使用以下指令将所有内容合并到一个镜像层,但是合并之后镜像层就不能够进行共享

docker iamge build 镜像名 --squash
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值