Docker镜像指南:从核心命令到离线迁移实战
·
Docker 镜像基础命令
查看本地镜像列表:
docker images
拉取远程镜像(以 Ubuntu 为例):
docker pull ubuntu:20.04
删除指定镜像:
docker rmi <IMAGE_ID>
强制删除正在使用的镜像:
docker rmi -f <IMAGE_ID>
镜像构建与打包
通过 Dockerfile 构建镜像:
docker build -t myimage:v1 .
查看镜像构建历史:
docker history <IMAGE_ID>
将镜像保存为 tar 文件:
docker save -o myimage.tar myimage:v1
从 tar 文件加载镜像:
docker load -i myimage.tar
镜像标签管理
给镜像添加新标签:
docker tag myimage:v1 myregistry.com/myimage:v1
推送镜像到私有仓库:
docker push myregistry.com/myimage:v1
离线迁移解决方案
方案1:通过 tar 文件迁移
docker save -o migration.tar image1 image2
scp migration.tar target-server:
docker load -i migration.tar
方案2:使用 registry 中转
# 源服务器
docker tag local-image:latest registry-server:5000/migration-image
docker push registry-server:5000/migration-image
# 目标服务器
docker pull registry-server:5000/migration-image
镜像优化技巧
多阶段构建示例:
FROM golang:1.18 AS builder
WORKDIR /app
COPY . .
RUN go build -o myapp .
FROM alpine:latest
COPY --from=builder /app/myapp .
CMD ["./myapp"]
清理悬空镜像:
docker image prune
镜像安全扫描
执行漏洞扫描:
docker scan <IMAGE_NAME>
查看镜像详细配置:
docker inspect <IMAGE_ID>
检查镜像变更历史:
docker diff <CONTAINER_ID>
更多推荐



所有评论(0)