欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 房产 > 家装 > 镜像和容器的管理

镜像和容器的管理

2025/5/8 13:14:40 来源:https://blog.csdn.net/weixin_56449709/article/details/147767946  浏览:    关键词:镜像和容器的管理

一、镜像的管理

  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 主机上文件夹的绝对路径: 虚拟机上文件夹的绝对路径将主机上文件夹的所有文件映射到虚拟机的指定文件夹中(之间文件夹中的内容映射过去了,但是文件夹本身没有到指定文件夹下)

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com