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
减少镜像大小
- 使用
alpine
基础镜像 - 多阶段构建(减少最终镜像大小)
- 合并
RUN
命令(减少层数) - 清理缓存
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容器镜像操作的资料请关注脚本之家其它相关文章!