Interview AiBoxInterview AiBox 实时 AI 助手,让你自信应答每一场面试
请列举并说明Docker的常用指令及其用途。
题型摘要
Docker常用指令主要分为六大类:镜像管理、容器管理、网络管理、数据卷管理、系统管理和Docker Compose指令。镜像管理指令用于拉取、构建、删除和推送镜像;容器管理指令用于创建、启动、停止、删除容器以及在容器中执行命令;网络管理指令用于创建和管理Docker网络;数据卷管理指令用于创建和管理数据卷;系统管理指令用于查看系统信息和清理资源;Docker Compose指令用于管理多容器应用。掌握这些指令是使用Docker进行容器化部署和管理的基础。
Docker常用指令及其用途
Docker是一个开源的容器化平台,它允许开发者将应用程序及其依赖项打包到一个可移植的容器中。以下是一些Docker的常用指令及其用途:
1. 镜像管理指令
docker pull
- 用途:从Docker Hub或其他镜像仓库拉取镜像
- 语法:
docker pull [OPTIONS] NAME[:TAG|@DIGEST] - 示例:
docker pull ubuntu:20.04
docker images
- 用途:列出本地所有镜像
- 语法:
docker images [OPTIONS] [REPOSITORY[:TAG]] - 示例:
docker images或docker images ubuntu
docker build
- 用途:根据Dockerfile构建镜像
- 语法:
docker build [OPTIONS] PATH | URL | - - 示例:
docker build -t myapp:1.0 .
docker rmi
- 用途:删除一个或多个镜像
- 语法:
docker rmi [OPTIONS] IMAGE [IMAGE...] - 示例:
docker rmi ubuntu:20.04
docker tag
- 用途:为镜像创建一个新的标签
- 语法:
docker tag SOURCE_IMAGE[:TAG] TARGET_IMAGE[:TAG] - 示例:
docker tag ubuntu:20.04 my-ubuntu:latest
docker push
- 用途:将镜像推送到镜像仓库
- 语法:
docker push [OPTIONS] NAME[:TAG] - 示例:
docker push myusername/myapp:1.0
docker save
- 用途:将镜像保存为tar归档文件
- 语法:
docker save [OPTIONS] IMAGE [IMAGE...] - 示例:
docker save -o myapp.tar myapp:1.0
docker load
- 用途:从tar归档文件加载镜像
- 语法:
docker load [OPTIONS] - 示例:
docker load -i myapp.tar
2. 容器管理指令
docker run
- 用途:创建并启动一个新的容器
- 语法:
docker run [OPTIONS] IMAGE [COMMAND] [ARG...] - 示例:
docker run -it --name mycontainer ubuntu:20.04 /bin/bash
docker ps
- 用途:列出正在运行的容器
- 语法:
docker ps [OPTIONS] - 示例:
docker ps或docker ps -a(列出所有容器,包括已停止的)
docker stop
- 用途:停止一个或多个正在运行的容器
- 语法:
docker stop [OPTIONS] CONTAINER [CONTAINER...] - 示例:
docker stop mycontainer
docker start
- 用途:启动一个或多个已停止的容器
- 语法:
docker start [OPTIONS] CONTAINER [CONTAINER...] - 示例:
docker start mycontainer
docker restart
- 用途:重启一个或多个容器
- 语法:
docker restart [OPTIONS] CONTAINER [CONTAINER...] - 示例:
docker restart mycontainer
docker rm
- 用途:删除一个或多个容器
- 语法:
docker rm [OPTIONS] CONTAINER [CONTAINER...] - 示例:
docker rm mycontainer
docker exec
- 用途:在运行中的容器中执行命令
- 语法:
docker exec [OPTIONS] CONTAINER COMMAND [ARG...] - 示例:
docker exec -it mycontainer /bin/bash
docker logs
- 用途:获取容器的日志
- 语法:
docker logs [OPTIONS] CONTAINER - 示例:
docker logs mycontainer
docker inspect
- 用途:获取容器或镜像的详细信息
- 语法:
docker inspect [OPTIONS] NAME|ID [NAME|ID...] - 示例:
docker inspect mycontainer
docker cp
- 用途:在容器和本地文件系统之间复制文件
- 语法:
docker cp [OPTIONS] CONTAINER:SRC_PATH DEST_PATH|-或docker cp [OPTIONS] SRC_PATH|- CONTAINER:DEST_PATH - 示例:
docker cp mycontainer:/app/config.yml ./config.yml
docker commit
- 用途:从容器的更改创建一个新的镜像
- 语法:
docker commit [OPTIONS] CONTAINER [REPOSITORY[:TAG]] - 示例:
docker commit mycontainer myapp:2.0
3. 网络管理指令
docker network create
- 用途:创建一个新的Docker网络
- 语法:
docker network create [OPTIONS] NETWORK - 示例:
docker network create --driver bridge my-network
docker network ls
- 用途:列出所有Docker网络
- 语法:
docker network ls [OPTIONS] - 示例:
docker network ls
docker network inspect
- 用途:显示一个或多个网络的详细信息
- 语法:
docker network inspect [OPTIONS] NETWORK [NETWORK...] - 示例:
docker network inspect my-network
docker network rm
- 用途:删除一个或多个网络
- 语法:
docker network rm NETWORK [NETWORK...] - 示例:
docker network rm my-network
docker network connect
- 用途:将容器连接到网络
- 语法:
docker network connect [OPTIONS] NETWORK CONTAINER - 示例:
docker network connect my-network mycontainer
docker network disconnect
- 用途:将容器从网络断开
- 语法:
docker network disconnect [OPTIONS] NETWORK CONTAINER - 示例:
docker network disconnect my-network mycontainer
4. 数据卷管理指令
docker volume create
- 用途:创建一个新的数据卷
- 语法:
docker volume create [OPTIONS] [VOLUME] - 示例:
docker volume create my-volume
docker volume ls
- 用途:列出所有数据卷
- 语法:
docker volume ls [OPTIONS] - 示例:
docker volume ls
docker volume inspect
- 用途:显示一个或多个数据卷的详细信息
- 语法:
docker volume inspect [OPTIONS] VOLUME [VOLUME...] - 示例:
docker volume inspect my-volume
docker volume rm
- 用途:删除一个或多个数据卷
- 语法:
docker volume rm VOLUME [VOLUME...] - 示例:
docker volume rm my-volume
docker volume prune
- 用途:删除所有未使用的数据卷
- 语法:
docker volume prune [OPTIONS] - 示例:
docker volume prune
5. 系统管理指令
docker info
- 用途:显示系统范围的信息
- 语法:
docker info [OPTIONS] - 示例:
docker info
docker version
- 用途:显示Docker版本信息
- 语法:
docker version [OPTIONS] - 示例:
docker version
docker system df
- 用途:显示Docker使用的磁盘空间
- 语法:
docker system df [OPTIONS] - 示例:
docker system df
docker system prune
- 用途:清理未使用的Docker对象
- 语法:
docker system prune [OPTIONS] - 示例:
docker system prune -a(清理所有未使用的对象)
docker stats
- 用途:显示容器的实时资源使用统计
- 语法:
docker stats [OPTIONS] [CONTAINER...] - 示例:
docker stats或docker stats mycontainer
6. Docker Compose指令
docker-compose up
- 用途:创建并启动容器
- 语法:
docker-compose up [OPTIONS] [SERVICE...] - 示例:
docker-compose up -d(在后台运行)
docker-compose down
- 用途:停止并移除容器、网络、卷和镜像
- 语法:
docker-compose down [OPTIONS] - 示例:
docker-compose down
docker-compose ps
- 用途:列出容器
- 语法:
docker-compose ps [OPTIONS] [SERVICE...] - 示例:
docker-compose ps
docker-compose logs
- 用途:查看服务日志
- 语法:
docker-compose logs [OPTIONS] [SERVICE...] - 示例:
docker-compose logs -f web(跟踪web服务的日志)
docker-compose build
- 用途:构建或重建服务
- 语法:
docker-compose build [OPTIONS] [SERVICE...] - 示例:
docker-compose build
docker-compose exec
- 用途:在运行中的容器中执行命令
- 语法:
docker-compose exec [OPTIONS] SERVICE COMMAND [ARGS...] - 示例:
docker-compose exec web /bin/bash
参考文档
- Docker官方文档 - CLI参考:https://docs.docker.com/engine/reference/commandline/docker/
- Docker官方文档 - Dockerfile参考:https://docs.docker.com/engine/reference/builder/
- Docker官方文档 - Docker Compose参考:https://docs.docker.com/compose/reference/
- Docker官方文档 - 网络概述:https://docs.docker.com/network/
- Docker官方文档 - 存储概述:https://docs.docker.com/storage/
思维导图
Interview AiBoxInterview AiBox — 面试搭档
不只是准备,更是实时陪练
Interview AiBox 在面试过程中提供实时屏幕提示、AI 模拟面试和智能复盘,让你每一次回答都更有信心。
AI 助读
一键发送到常用 AI
Docker常用指令主要分为六大类:镜像管理、容器管理、网络管理、数据卷管理、系统管理和Docker Compose指令。镜像管理指令用于拉取、构建、删除和推送镜像;容器管理指令用于创建、启动、停止、删除容器以及在容器中执行命令;网络管理指令用于创建和管理Docker网络;数据卷管理指令用于创建和管理数据卷;系统管理指令用于查看系统信息和清理资源;Docker Compose指令用于管理多容器应用。掌握这些指令是使用Docker进行容器化部署和管理的基础。
智能总结
深度解读
考点定位
思路启发
相关题目
请做一个自我介绍
自我介绍是面试的开场环节,需简洁有力地展示个人背景、技能经验与岗位匹配度。有效结构包括:开场问候、核心经历、技能展示、成就亮点、岗位认知、职业规划、公司了解和得体收尾。针对运维岗位,应突出Linux管理、网络配置、自动化部署等技术能力,并结合具体案例和量化成果。表达要真诚自然,时间控制在2-3分钟,展现自信和对公司的了解。
请详细介绍一下你参与的项目
项目经验介绍应包括项目背景、个人角色、技术栈、工作内容、挑战与解决方案、成果收获以及与岗位的关联。通过具体案例展示技术能力和问题解决能力,突出与运维岗位相关的经验和技能,如系统部署、监控、故障排查、自动化运维等。同时体现团队协作和持续学习的态度。
请介绍一下你的项目经验
在面试中介绍项目经验时,应选择与运维岗位最相关的项目,按"项目背景→个人职责→技术栈→难点与解决方案→项目成果"的结构进行介绍。重点突出自己在项目中的技术贡献、解决问题的能力以及与运维岗位相关的经验。通过具体案例展示自己的技术实力、学习能力和团队协作精神,并将项目经验与应聘岗位联系起来,展示自己的匹配度和价值。
请进行自我介绍并详细介绍你参与过的项目
自我介绍和项目经验是面试的重要环节。优秀的自我介绍应简洁明了地展示个人背景、专业技能和职业规划;项目经验介绍则应选择与岗位相关的项目,详细说明项目背景、个人职责、使用技术、解决方案和项目成果。回答时应突出与岗位相关的技能和经验,展现专业能力和解决问题的能力,同时保持自信和真诚的态度。
请详细介绍你简历中提到的项目,包括实现细节和遇到的问题
面试中介绍项目经验时,应选择与运维岗位最相关的项目,按照"项目背景-个人职责-技术实现-遇到问题-解决方案-项目成果"的结构进行介绍。重点突出个人贡献、技术细节和解决问题的能力,用数据量化项目成果。示例包括校园服务器集群自动化运维平台和基于Kubernetes的微服务部署与运维两个项目,展示了监控模块设计、CI/CD流水线构建、故障排查等运维核心能力。