Docker 基础
2026年3月7日大约 3 分钟
Docker 基础
Docker 是一个开源的容器化平台,允许开发者打包应用及其依赖项到一个轻量级、可移植的容器中。Docker 提供了一个统一的环境,使得应用可以在任何地方运行,无论是在开发环境、测试环境还是生产环境。
Docker 的核心概念
- 镜像(Image):Docker 镜像是一个只读模板,包含了运行应用所需的所有文件、环境变量和配置。镜像可以从 Docker Hub 等公共仓库获取,也可以由用户自己创建。
- 容器(Container):Docker 容器是镜像的一个实例,是一个运行中的环境。容器是隔离的,可以在同一主机上运行多个容器而不会互相干扰。
- Dockerfile:Dockerfile 是一个文本文件,包含了一系列指令,用于定义如何构建一个 Docker 镜像。通过 Dockerfile,开发者可以自动化镜像的构建过程。
- Docker Hub:Docker Hub 是一个公共的 Docker 镜像仓库,用户可以在这里上传和下载 Docker 镜像。它提供了大量的官方和社区维护的镜像,方便用户快速获取所需的环境。
常见命令

图:Docker常用命令
docker run
创建并运行一个新的容器。
- 可选参数:
-d:后台运行容器--name:指定容器名称,必须唯一,例如--name my-container-p:映射端口,例如-p 8080:80宿主机端口:容器内部端口-e:设置环境变量,例如-e ENV_VAR=value-v:挂载卷,例如-v /host/path:/container/path[repository]:[tag]:指定要运行的 镜像 和 标签(版本),例如nginx:latest
docker pull
从 Docker Hub 或其他镜像仓库拉取镜像。
- 例如:
docker pull nginx:latest
docker push
将本地镜像推送到 Docker Hub 或其他镜像仓库。
- 例如:
docker push my-image:latest - 注意:推送镜像之前需要先登录到 Docker Hub,使用
docker login命令进行登录。
docker save
将镜像保存为一个 tar 文件,方便备份或在其他环境中使用。
- 例如:
docker save -o my-image.tar my-image:latest
docker load
从一个 tar 文件加载镜像。
- 例如:
docker load -i my-image.tar
docker images
列出本地的 Docker 镜像。
docker rmi
删除一个镜像。
- 例如:
docker rmi nginx:latest
docker ps
列出正在运行的 Docker 容器。
- 可选参数:
-a:列出所有容器,包括未运行的容器
docker stop
停止一个正在运行的容器。
- 例如:
docker stop my-container
docker rm
删除一个容器。
- 例如:
docker rm my-container
docker logs
查看容器的日志输出。
- 可选参数:
-f:跟随日志输出,实时查看日志变化
- 例如:
docker logs my-container
docker exec
在运行中的容器内执行命令。
- 可选参数:
-it:以交互式终端的方式执行命令,需要指定命令行工具,例如bash或sh
- 例如:
docker exec -it my-container bash进入容器的交互式终端
docker build
根据 Dockerfile 构建一个新的镜像。
- 例如:
docker build -t my-image:latest .在当前目录下构建镜像,并命名为my-image:latest