主题
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 # 为镜像创建新标签并推送到私有仓库
使用代理拉取镜像
修改配置文件
bashsudo mkdir -p /etc/systemd/system/docker.service.d/ sudo vim /etc/systemd/system/docker.service.d/http-proxy.conf
添加以下内容
bash[Service] Environment="HTTP_PROXY=http://192.168.1.100:8080" Environment="HTTPS_PROXY=http://192.168.1.100:8080"
重启 Docker 服务
bashsudo systemctl daemon-reload sudo systemctl restart docker
验证设置
bashdocker info