Docker 常用命令速查表

Docker凭借其轻量级特性,在软件的开发、测试及部署等全生命周期中均有广泛应用。本文整理了Docker日常使用中的高频命令,便于快速查阅以应对各类操作场景。

镜像操作

1. 拉取镜像

docker pull 镜像名:标签

复制代码
# 拉取Ubuntu 22.04版本镜像
docker pull ubuntu:22.04        

2. 删除镜像

docker rmi 镜像名:标签 通过镜像名删除
docker rmi 镜像ID 通过镜像ID删除

3. 构建镜像

docker build 镜像名

复制代码
# 基于当前目录的Dockerfile,构建名为my-app:v1.0的镜像
docker build -t my-app:v1.0 .  

4. 镜像归档操作

  • docker load xxx.tar

    复制代码
    # 从my-app-v1.0.tar文件导入镜像
    docker load -i my-app-v1.0.tar
  • docker save -o xxx.tar 镜像名

    复制代码
    # 将my-app:v1镜像导出为my-app-v1.0.tar文件
    docker save -o my-app-v1.0.tar my-app:v1  

容器操作

1. 创建并启动容器

docker run [选项] 镜像名 [命令]

复制代码
# 创建Ubuntu 22.04容器并进入终端交互
docker run -it ubuntu:22.04 /bin/bash   

常用选项说明

-d:后台运行(守护模式)

-it:交互模式(常配合/bin/bash使用)

--name:指定容器名称

-p:端口映射(格式:宿主机端口:容器端口

-v:数据卷挂载(格式:宿主机目录:容器目录

--rm:容器退出后自动删除(适合临时测试)

2. 容器状态管理

docker start 容器名 启动容器
docker stop 容器名 停止容器
docker restart 容器名 重启容器

3. 进入运行中的容器

推荐使用docker exec命令与容器交互:

  • docker exec 容器名 命令

    复制代码
    # 进入名为ubuntu的容器终端
    docker exec -it ubuntu /bin/sh
  • docker attach 容器名

    复制代码
    # 连接到名为ubuntu的容器终端
    docker attach ubuntu

4. 删除容器

docker rm 容器名

复制代码
# 删除已停止的web容器
docker rm web       
# 批量删除所有已停止容器
docker rm $(docker ps -aq)

信息查询

1. 容器列表查看

docker ps

复制代码
# 显示正在运行的容器
docker ps   
# 显示所有容器(包括已停止的)
docker ps -a       

2. 镜像列表查看

docker images 列出本地所有镜像
docker images nginx 筛选显示nginx相关镜像

3. 容器日志查看

docker logs [选项] 容器名

复制代码
# 查看ubuntu容器的完整日志
docker logs ubuntu
# 实时追踪ubuntu容器的最新50行日志
docker logs -f --tail 50 ubuntu

4. 详细信息查看

docker inspect 容器名/镜像名 查看容器或镜像的详细配置信息

5. 端口映射查询

docker port 容器名 查看容器的端口映射关系

6. 资源占用监控

docker stats

复制代码
# 查看ubuntu容器的资源使用情况
docker stats ubuntu 
# 监控所有运行中容器的资源占用
docker stats      

容器内程序安全防护

在Docker容器中部署应用时,安全防护尤为重要,特别是在通过容器交付的场景下,需严防代码窃取与泄露。

Virbox Protector工具可全面保护容器内程序,无论是运行在Docker中的Java、Python程序,还是本地elf、so文件,均能提供针对性的安全策略,确保容器内程序的安全运行。

相关推荐
05大叔1 小时前
网络基础知识 域名,JSON格式,AI基础
运维·服务器·网络
安当加密1 小时前
无需改 PAM!轻量级 RADIUS + ASP身份认证系统 实现 Linux 登录双因子认证
linux·运维·服务器
dashizhi20151 小时前
服务器共享禁止保存到本地磁盘、共享文件禁止另存为本地磁盘、移动硬盘等
运维·网络·stm32·安全·电脑
卷福同学1 小时前
【养虾日记】QClaw操作浏览器自动化发文
运维·人工智能·程序人生·自动化
岁岁种桃花儿2 小时前
kubenetes从入门到上天系列第二十一篇:Kubernetes安装Ingress实战
云原生·容器·kubernetes
woho7788992 小时前
不同网段IP的网络打印机,打印、扫描设置
运维·服务器·网络
耗子会飞2 小时前
小白学习固定VM虚拟机的centos服务器的IP
运维·服务器·centos
洛阳泰山3 小时前
MaxKB4j Docker Compose 部署指南
java·docker·llm·springboot·rag·maxkb4j
程序员老赵3 小时前
超全 Docker 镜像源配置指南|Windows/Mac/Linux一键搞定,拉镜像再也不卡顿
linux·后端·容器
门豪杰3 小时前
Ubuntu下安装Claude Code
linux·运维·ubuntu·claude·claude code