docker

关注公众号 jb51net

关闭
首页 > 网站技巧 > 服务器 > 云和虚拟化 > docker > Docker容器镜像操作

Docker容器镜像工具使用示例详解(拉取、构建、管理、优化)

作者:学亮编程手记

本文详细介绍了Docker镜像的操作方法,包括获取、列出、运行、删除、保存镜像以及镜像的导出和导入,每个操作都提供了具体的命令和示例,旨在帮助用户高效管理Docker镜像,需要的朋友可以参考下

以下是更详细的 Docker 容器镜像工具使用示例,涵盖镜像的 拉取、构建、管理、优化 等常见操作:

1. 镜像拉取与搜索

从 Docker Hub 拉取镜像

# 拉取最新版 Ubuntu
docker pull ubuntu

# 拉取指定版本的 Nginx
docker pull nginx:1.23.4

# 拉取 Alpine Linux(轻量级镜像)
docker pull alpine:3.18

搜索镜像

# 搜索 Redis 相关镜像
docker search redis

# 仅显示官方镜像
docker search --filter "is-official=true" redis

2. 镜像管理

查看本地镜像

# 列出所有镜像
docker images

# 仅显示镜像 ID
docker images -q

# 显示镜像大小(人类可读格式)
docker images --format "{{.ID}}\t{{.Repository}}\t{{.Tag}}\t{{.Size}}"

删除镜像

# 删除单个镜像
docker rmi nginx:1.23.4

# 强制删除(即使有容器使用)
docker rmi -f nginx:latest

# 删除所有未被使用的镜像
docker image prune

# 删除所有镜像(谨慎使用!)
docker rmi $(docker images -q)

3. 构建镜像(Dockerfile 示例)

示例 Dockerfile

# 使用 Alpine Linux 作为基础镜像
FROM alpine:3.18

# 安装 Nginx
RUN apk add --no-cache nginx

# 复制配置文件
COPY nginx.conf /etc/nginx/nginx.conf

# 暴露 80 端口
EXPOSE 80

# 启动 Nginx
CMD ["nginx", "-g", "daemon off;"]

构建镜像

# 构建镜像并打标签
docker build -t my-nginx:1.0 .

# 指定 Dockerfile 路径
docker build -t my-nginx:1.0 -f /path/to/Dockerfile .

# 多阶段构建(优化镜像大小)
docker build --target production -t my-app:prod .

4. 镜像导出与导入

导出镜像为 .tar 文件

# 导出镜像
docker save -o nginx.tar nginx:latest

# 导出多个镜像
docker save -o all-images.tar nginx:latest alpine:3.18

从 .tar 文件导入镜像

docker load -i nginx.tar

5. 镜像推送至 Docker Hub / 私有仓库

登录 Docker Hub

docker login

打标签并推送

# 打标签(格式:`<仓库>/<镜像名>:<标签>`)
docker tag my-nginx:1.0 username/my-nginx:1.0

# 推送至 Docker Hub
docker push username/my-nginx:1.0

# 推送至私有仓库
docker tag my-nginx:1.0 registry.example.com/my-nginx:1.0
docker push registry.example.com/my-nginx:1.0

6. 镜像优化

查看镜像层

# 查看镜像构建历史
docker history nginx:latest

# 使用 dive 分析镜像(需安装)
dive nginx:latest

减少镜像大小

RUN apt-get update && apt-get install -y nginx \
    && rm -rf /var/lib/apt/lists/*

7. 其他实用命令

查看镜像详细信息

docker inspect nginx:latest

查看镜像占用空间

docker system df

清理未使用的镜像

docker system prune -a

总结

操作命令示例
拉取镜像docker pull nginx:latest
构建镜像docker build -t my-app:1.0 .
查看镜像docker images
删除镜像docker rmi nginx:latest
导出镜像docker save -o nginx.tar nginx:latest
导入镜像docker load -i nginx.tar
推送镜像docker push username/my-app:1.0
优化镜像dive my-app:1.0

以上就是Docker容器镜像工具使用示例详解(拉取、构建、管理、优化)的详细内容,更多关于Docker容器镜像操作的资料请关注脚本之家其它相关文章!

您可能感兴趣的文章:
阅读全文