Docker容器鏡像工具使用示例詳解(拉取、構(gòu)建、管理、優(yōu)化)
更新時間:2025年07月09日 09:27:27 作者:學(xué)亮編程手記
本文詳細介紹了Docker鏡像的操作方法,包括獲取、列出、運行、刪除、保存鏡像以及鏡像的導(dǎo)出和導(dǎo)入,每個操作都提供了具體的命令和示例,旨在幫助用戶高效管理Docker鏡像,需要的朋友可以參考下
以下是更詳細的 Docker 容器鏡像工具使用示例,涵蓋鏡像的 拉取、構(gòu)建、管理、優(yōu)化 等常見操作:
1. 鏡像拉取與搜索
從 Docker Hub 拉取鏡像
# 拉取最新版 Ubuntu docker pull ubuntu # 拉取指定版本的 Nginx docker pull nginx:1.23.4 # 拉取 Alpine Linux(輕量級鏡像) docker pull alpine:3.18
搜索鏡像
# 搜索 Redis 相關(guān)鏡像 docker search redis # 僅顯示官方鏡像 docker search --filter "is-official=true" redis
2. 鏡像管理
查看本地鏡像
# 列出所有鏡像
docker images
# 僅顯示鏡像 ID
docker images -q
# 顯示鏡像大?。ㄈ祟惪勺x格式)
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. 構(gòu)建鏡像(Dockerfile 示例)
示例 Dockerfile
# 使用 Alpine Linux 作為基礎(chǔ)鏡像 FROM alpine:3.18 # 安裝 Nginx RUN apk add --no-cache nginx # 復(fù)制配置文件 COPY nginx.conf /etc/nginx/nginx.conf # 暴露 80 端口 EXPOSE 80 # 啟動 Nginx CMD ["nginx", "-g", "daemon off;"]
構(gòu)建鏡像
# 構(gòu)建鏡像并打標簽 docker build -t my-nginx:1.0 . # 指定 Dockerfile 路徑 docker build -t my-nginx:1.0 -f /path/to/Dockerfile . # 多階段構(gòu)建(優(yōu)化鏡像大?。? docker build --target production -t my-app:prod .
4. 鏡像導(dǎo)出與導(dǎo)入
導(dǎo)出鏡像為 .tar 文件
# 導(dǎo)出鏡像 docker save -o nginx.tar nginx:latest # 導(dǎo)出多個鏡像 docker save -o all-images.tar nginx:latest alpine:3.18
從 .tar 文件導(dǎo)入鏡像
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. 鏡像優(yōu)化
查看鏡像層
# 查看鏡像構(gòu)建歷史 docker history nginx:latest # 使用 dive 分析鏡像(需安裝) dive nginx:latest
減少鏡像大小
- 使用
alpine基礎(chǔ)鏡像 - 多階段構(gòu)建(減少最終鏡像大小)
- 合并
RUN命令(減少層數(shù)) - 清理緩存
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
總結(jié)
| 操作 | 命令示例 |
|---|---|
| 拉取鏡像 | docker pull nginx:latest |
| 構(gòu)建鏡像 | docker build -t my-app:1.0 . |
| 查看鏡像 | docker images |
| 刪除鏡像 | docker rmi nginx:latest |
| 導(dǎo)出鏡像 | docker save -o nginx.tar nginx:latest |
| 導(dǎo)入鏡像 | docker load -i nginx.tar |
| 推送鏡像 | docker push username/my-app:1.0 |
| 優(yōu)化鏡像 | dive my-app:1.0 |
以上就是Docker容器鏡像工具使用示例詳解(拉取、構(gòu)建、管理、優(yōu)化)的詳細內(nèi)容,更多關(guān)于Docker容器鏡像操作的資料請關(guān)注腳本之家其它相關(guān)文章!
相關(guān)文章
詳解基于docker-swarm搭建持續(xù)集成集群服務(wù)
這篇文章主要介紹了詳解基于docker-swarm搭建持續(xù)集成集群服務(wù),小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2018-10-10
Docker安裝Nginx并部署及MySQL容器構(gòu)建全過程
眾所周知Docker是一種容器化技術(shù),可以用來快速部署和管理應(yīng)用程序,這篇文章主要給大家介紹了關(guān)于Docker安裝Nginx并部署及MySQL容器構(gòu)建的相關(guān)資料,需要的朋友可以參考下2024-02-02
低版本Docker升級高版本Docker的詳細教程及成功避坑
如果我們使用docker來管理容器,那么保持docker引擎的更新將會是十分重要的,下面這篇文章主要給大家介紹了關(guān)于低版本Docker升級高版本Docker的詳細教程及成功避坑,文中通過圖文介紹的非常詳細,需要的朋友可以參考下2023-05-05
Ubuntu 20.04 上安裝和使用 Docker的詳細過程(安裝包)
這篇文章主要介紹了Ubuntu 20.04 上安裝和使用 Docker的詳細過程(安裝包),本文給大家介紹的非常詳細,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2022-03-03

