当前位置: 首页 > news >正文

镜像和容器的管理

一、镜像的管理

  1. 获取镜像并生成相关容器
# 拉取镜像
docker pull alpine
# 默认是latest,也就是最新版本,也可指定版本(在镜像名后边加“:版本号”)
# 或者
# 从主机中导入镜像到docker中
docker image load -i /test#生成容器
docker run -it alpine
# 默认让容器执行bash 命令,也可以在容器名后边直接写想要让容器运行的命令
# -it 表示容器要交互式运行
  1. 删除镜像,导出镜像
# 查看运行过的容器(无论是否在运行中)
docker ps -a 
# 删除基于alpine 的容器
docker rm 容器id
# 删除alpine 镜像(可以使用id 也可以使用名称,id可以是部分也可是全部)
docker rmi alpine
# 被删除的镜像不能有依赖其产生的容器# 批量删除镜像
docker rmi `docker images -aq `
# 或者
docker rmi $(docker images -aq)# 导出镜像到主机的指定目录/test文件夹中
docker image save alpine > /test
  1. 查看镜像的信息
# 查看所有的镜像
docker images
docker image ls
# 以上两种的写法是显示出的内容是一致的# 查看指定镜像
docker image 镜像名称# 查看全部镜像的id(-q)
docker images -q#格式化显示镜像
docker images --format "{{.ID}}--{{.Repository}}"
# 写作格式:docker images --format "{{.列名}}自己写的,随便啥符号都行{{.列名}}"
# 以表格的形式显示镜像
docker images --format "table{{.ID}}--{{.Repository}}"# 查看镜像的详细信息
docker image inspect 镜像id

向dockerhub中搜索指定镜像

docker search 镜像名

二、容器的管理
docker run 表示创建+启动的命令
docker run 镜像名(如果镜像不存在本地,则会在线去下载该镜像)

注意:容器内的进程必须处于前台运行的状态,否则容器就会直接退出。但容器的运行可以在后台。注意区分

实例:

docker run ubuntu:20.04
# 这个写法,会产生独立的容器记录。因为容器内没有程序在运行,因此容器直接关闭
docker run -it ubuntu:20.04 bash 
# 这是正确的写法,以交互的方式运行ubuntu20.04,且在容器内执行bashdocker run ubuntu:20.04 ping baidu.com 
# 启动ubuntu20.04容器,在容器内执行ping百度的命令,这个命令是在前台运行的,成功的卡住了终端
docker run -d ubuntu:20.04 ping baidu.com
# docker ps可以看到的容器;-d 参数,让容器在后台跑着(相对宿主机而言),容器中的程序在容器的前台运行,因此容器没有挂# 查看至今为止容器内的所有日志
docker logs 容器id  
# -f 表示刷新容器日志
docker logs -f 容器id 
# 可配合管道使用 docker logs 容器id  | tail -5docker exec -it 容器id bash
# 进入正在运行的容器空间内(exec大概率配合-it,进入容器内要交互式地做操作) docker container inspect 容器id
# 查看容器的详细信息,用于高级调试。显示json数组:容器运行状态,容器管理的数据docker port 容器id
# 查看容器内的端口转发情况:docker commit 容器id  新的镜像名
# 容器的提交
# 运行基础的ubuntu:20.04, 在容器里装something,然后提交新的镜像
# 新的镜像,再运行出的容器,默认就携带something了docker info
# 查看docker服务的信息
  • 在运行容器时,常用的参数总结
run常用的参数含义
-it以交互的方式运行容器
-d将容器运行到后台
–rm容器结束后自动删除容器
-p 宿主机端口:容器内暴露的端口容器是独立的网络空间,自己的ip和端口,因此在主机上查看运行的时候需要将端口映射到主机的端口
–name设置容器的名字
-P随机端口映射,随机访问主机的空闲端口(0-65535)映射到容器内打开的端口
-v 主机上文件夹的绝对路径: 虚拟机上文件夹的绝对路径将主机上文件夹的所有文件映射到虚拟机的指定文件夹中(之间文件夹中的内容映射过去了,但是文件夹本身没有到指定文件夹下)

相关文章:

  • STM32--中断
  • k8s高可用集群,自动化更新证书脚本
  • 大模型范式转移:解码深度学习新纪元
  • $在R语言中的作用
  • linux_进程地址空间(虚拟地址空间)
  • Linux理解文件fd
  • LWIP的超时事件笔记
  • 处理PostgreSQL数据库事务死锁过程
  • 从机器人到调度平台:超低延迟RTMP|RTSP播放器系统级部署之道
  • Ubuntu20.04安装使用ROS-PlotJuggler
  • 注册 Broadcom 账号成功后,Broadcom 无法登录(最简单方案)
  • 16.Excel:数据收集
  • Linux 服务器静态 IP 配置初始化指南
  • C# NX二次开发:投影曲线和偏置曲线UFUN函数详解
  • leetcode hot100 技巧
  • ChatGPT-4o:临床医学科研与工作的创新引擎
  • maven基本介绍
  • influxdb实战
  • 三、Hadoop1.X及其组件的深度剖析
  • MATLAB的cvpartition函数用法
  • 体验中国传统文化、采购非遗文创,波兰游客走进上海市群艺馆
  • 印方称所有敌对行动均得到反击和回应,不会升级冲突
  • 时代中国控股:前4个月销售额18.1亿元,境外债重组协议押后聆讯至5月底
  • 第一集|《刑警的日子》很生活,《执法者们》有班味
  • 75岁亚当·费舍尔坐镇,再现80分钟马勒《第九交响曲》
  • 水利部:山西、陕西等地旱情将持续