Skip to content

Docker 镜像(Image)

Docker 镜像是一个只读模板,用于创建 Docker 容器。它包含了若干个文件系统层和一个容器启动所需的配置参数等信息,可以看作是容器的静态实体。镜像可以从 Docker Hub 或者本地构建的 Dockerfile 中获取。

docker image

bash
用法: docker image COMMAND

管理镜像

命令:
build Dockerfile 构建镜像
          语法: docker image build [OPTIONS] PATH | URL | -
          示例:
            - docker image build -t my-image:latest .  # 从当前目录的 Dockerfile 构建镜像并命名为 my-image:latest
            - docker image build -t my-image:latest -f Dockerfile.dev .  # 使用指定 Dockerfile 构建镜像

history   显示镜像的历史记录
          语法: docker image history [OPTIONS] IMAGE
          示例:
            - docker image history my-image:latest  # 查看镜像的构建历史

import tarball 文件导入镜像
          语法: docker image import [OPTIONS] file|URL|- [REPOSITORY[:TAG]]
          示例:
            - docker image import my-image.tar my-image:latest  # 从 tarball 文件导入镜像

inspect   显示一个或多个镜像的详细信息
          语法: docker image inspect [OPTIONS] IMAGE [IMAGE...]
          示例:
            - docker image inspect my-image:latest  # 查看镜像的详细信息

load tar 归档文件或标准输入加载镜像
          语法: docker image load [OPTIONS]
          示例:
            - docker image load -i my-image.tar  # 从 tar 文件加载镜像

ls        列出镜像
          语法: docker image ls [OPTIONS] [REPOSITORY[:TAG]]
          示例:
            - docker image ls  # 列出所有镜像
            - docker image ls -a  # 列出所有镜像(包括中间层镜像)

prune     删除未使用的镜像
          语法: docker image prune [OPTIONS]
          示例:
            - docker image prune -f  # 强制删除未使用的镜像

pull      从镜像仓库拉取镜像
          语法: docker image pull [OPTIONS] NAME[:TAG|@DIGEST]
          示例:
            - docker image pull nginx:latest  # 拉取最新的 Nginx 镜像
            - docker image pull my-registry/my-image:1.0  # 从私有仓库拉取镜像

push      将镜像推送到镜像仓库
          语法: docker image push [OPTIONS] NAME[:TAG]
          示例:
            - docker image push my-registry/my-image:1.0  # 将镜像推送到私有仓库

rm        删除一个或多个镜像
          语法: docker image rm [OPTIONS] IMAGE [IMAGE...]
          示例:
            - docker image rm my-image:latest  # 删除指定镜像
            - docker image rm $(docker image ls -q)  # 删除所有镜像

save      将一个或多个镜像保存为 tar 归档文件
          语法: docker image save [OPTIONS] IMAGE [IMAGE...]
          示例:
            - docker image save -o my-image.tar my-image:latest  # 将镜像保存为 tar 文件

tag       为镜像创建标签
          语法: docker image tag SOURCE_IMAGE[:TAG] TARGET_IMAGE[:TAG]
          示例:
            - docker image tag my-image:latest my-registry/my-image:1.0  # 为镜像创建新标签并推送到私有仓库

使用代理拉取镜像

  1. 修改配置文件

    bash
    sudo mkdir -p /etc/systemd/system/docker.service.d/
    sudo vim /etc/systemd/system/docker.service.d/http-proxy.conf
  2. 添加以下内容

    bash
    [Service]
    Environment="HTTP_PROXY=http://192.168.1.100:8080"
    Environment="HTTPS_PROXY=http://192.168.1.100:8080"
  3. 重启 Docker 服务

    bash
    sudo systemctl daemon-reload
    sudo systemctl restart docker
  4. 验证设置

    bash
    docker info

基于 MIT 许可发布