docker详解介绍+基础操作 (五)容器镜像2

1.镜像导出导入

例:将一台主机的所有镜像传导另一台主机

复制代码
#方法1
A机器 docker save `docker images |awk 'NR!=1{print $1:$2}'` > backup.tar
B机器 scp backuo.tar 10.0.0.200:
B机器 docker load < backup.tar

#方法2
A机器 docker save `docker image ls  --format "{{.Repository}}:{{.Tag}}"` > backup.tar
B机器 scp backuo.tar 10.0.0.200:/data
B机器 docker load < backup.tar

2.删除镜像

docker rmi nginx

删除dangling状态镜像

docker rmi -f `docker images -q -f dangling=true`

删除dangling和不在使用的镜像

docker images prune -a -f

3.镜像打标签

常见用法

  1. 给本地镜像打标签

假设你有一个本地镜像 myapp:latest,你想给它打一个 v1.1 的标签:

复制代码
docker tag myapp:latest myapp:v1.1
  1. 给镜像打多个标签

你可以给同一个镜像打多个标签,例如:

复制代码
docker tag 1234567890ab myapp:latest
docker tag 1234567890ab myapp:v1.0
docker tag 1234567890ab myapp:stable
  1. 给镜像打标签并推送到私有仓库

假设你有一个私有仓库 registry.example.com,你可以这样给镜像打标签并推送:

复制代码
docker tag 1234567890ab registry.example.com/myapp:v1.0
docker push registry.example.com/myapp:v1.0

注意事项

标签名称:标签名称可以是任何字符串,但通常使用语义化的版本号(如 v1.0)或状态标签(如 latest、stable)。

镜像 ID:使用镜像 ID 而不是镜像名称可以确保你打标签的镜像是正确的。

推送镜像:在推送镜像之前,确保你已经登录到 Docker Hub 或私有仓库:

复制代码
docker login
相关推荐
一直不明飞行9 小时前
Java的equals(),hashCode()应该在什么时候重写
java·开发语言·jvm
REDcker9 小时前
有限状态机与状态模式详解 FSM建模Java状态模式与C++表驱动模板实践
java·c++·状态模式
你的保护色10 小时前
【无标题】
java·服务器·网络
basketball61610 小时前
C++ 构造函数完全指南:从入门到进阶
java·开发语言·c++
淘矿人10 小时前
Claude辅助DevOps实践
java·大数据·运维·人工智能·算法·bug·devops
小江的记录本11 小时前
【Java基础】泛型:泛型擦除、通配符、上下界限定(附《思维导图》+《面试高频考点清单》)
java·数据结构·后端·mysql·spring·面试·职场和发展
来恩100311 小时前
请求转发与响应重定向的使用
java
万里侯11 小时前
GitOps实战:用Git管理基础设施
微服务·容器·k8s
@杰克成11 小时前
Java学习30
java·开发语言·学习
次元工程师!11 小时前
LangFlow开发(三)—Bundles组件架构设计(3W+字详细讲解)
java·前端·python·低代码·langflow