百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 技术文章 > 正文

Docker命令最全详解(39个最常用命令)

nanshan 2025-07-24 20:27 5 浏览 0 评论

Docker是云原生的核心,也是大厂的必备技能,下面我就全面来详解Docker核心命令@mikechen


本文作者:陈睿|mikechen

文章来源:mikechen.cc

一、Docker 基本命令

docker info
显示 Docker 系统的详细信息,包括:容器数、镜像数、存储驱动…等。

比如:

$ docker infoClient: Context:    default Debug Mode: false Server: Containers: 5 Running: 2 Paused: 0 Stopped: 3 Images: 8

docker version
显示客户端和服务端的版本信息。

比如:

$ docker versionClient: Version:           20.10.7 API version:       1.41 Go version:        go1.16.5 ... Server: Version:           20.10.7 API version:       1.41 Go version:        go1.16.5

二、镜像管理命令

docker pull <image_name>
从 Docker Hub 拉取镜像到本地。

比如:

$ docker pull ubuntu:latestlatest: Pulling from library/ubuntub8f5c7c582e4: Pull complete

docker push <image_name>
将本地镜像推送到 Docker Hub,比如:

$ docker push myusername/myimage:latestThe push refers to repository [docker.io/myusername/myimage]

docker build -t <tag_name> <path>
从 Dockerfile 构建镜像,并给镜像打上标签。

比如:

$ docker build -t myimage:1.0 .Sending build context to Docker daemon  2.048kBStep 1/3 : FROM ubuntu:latest...Successfully tagged myimage:1.0

docker images
列出本地所有的镜像。

比如:

REPOSITORY          TAG                 IMAGE ID       CREATED        SIZEmy-nginx            latest              <IMAGE ID>   2 weeks ago    97.3MBubuntu              latest              <IMAGE ID>   3 weeks ago    72.9MB

docker rmi <image_name>
删除指定的镜像。

docker tag <source_image> <target_image>
为镜像打标签。

docker history <image_name>
查看镜像的历史层。

docker inspect <image_name>
查看镜像的详细信息,包括配置、层、依赖等。

三、容器管理命令

docker run <options> <image_name>
创建并启动一个新的容器。

比如:

docker run -d --name my-nginx -p 80:80 my-nginx

这会创建一个名为my-nginx的容器,并在后台运行,将容器的80端口映射到宿主机80端口。

常用参数:

-d:后台运行

-p <host_port>:<container_port>:端口映射

--name <container_name>:指定容器名称

-v <host_dir>:<container_dir>:挂载数据卷

--rm:容器退出时自动删除

docker ps
列出所有运行中的容器。

docker ps -a
列出所有容器(包括已停止的容器)。

比如:

$ docker ps -aCONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS                     PORTS                  NAMES3f1e5b6f9a9f        nginx:stable        "/docker-entrypoint.…"   4 minutes ago       Up 4 minutes               0.0.0.0:8080->80/tcp   mynginx5ab2c8e5a6fe        ubuntu:latest       "/bin/bash"              2 days ago          Exited (0) 24 hours ago                          ubuntu-container

docker exec -it <container_name> <command>
在运行中的容器中执行命令。常用于进入容器的命令行。

docker start <container_name>
启动一个已停止的容器。

docker stop <container_name>
停止一个正在运行的容器。

docker restart <container_name>
重启容器。

docker kill <container_name>
强制停止一个容器。

docker rm <container_name>
删除一个已停止的容器。

docker logs <container_name>
查看容器的日志。

docker top <container_name>
查看容器内进程信息。

docker stats
实时查看容器的资源使用情况(CPU、内存、网络等)。

docker attach <container_name>
连接到运行中的容器的主进程。

四、网络管理命令

docker network ls
列出所有 Docker 网络。

比如:

$ docker network lsNETWORK ID          NAME                DRIVER              SCOPE1f407d35a3e9        bridge              bridge              local2e39f93861fc        host                host                local

docker network inspect <network_name>
查看某个网络的详细信息。

docker network create <network_name>
创建一个新的 Docker 网络。

docker network connect <network_name> <container_name>
将容器连接到某个网络。

docker network disconnect <network_name> <container_name>
从网络中断开容器。

五、数据卷管理命令

docker volume ls
列出所有 Docker 数据卷。

比如:

$ docker volume lsDRIVER              VOLUME NAMElocal               myvolume

docker volume inspect <volume_name>
查看数据卷的详细信息。

比如:

$ docker volume inspect myvolume[  {    "CreatedAt": "2021-10-01T07:35:00Z",    "Driver": "local",    "Labels": {},    "Mountpoint": "/var/lib/docker/volumes/myvolume/_data",    "Name": "myvolume",    "Scope": "local"  }]

查看数据卷 myvolume 的详细信息。

docker volume create <volume_name>
创建一个新的数据卷。

docker volume rm <volume_name>
删除指定的数据卷。

六、Docker 镜像和容器的清理命令

docker system prune
删除所有未使用的容器、网络和镜像。可以使用 -a 参数删除所有未被使用的镜像。

docker container prune
删除所有已停止的容器。

docker image prune
删除所有未使用的镜像。

docker volume prune
删除所有未使用的数据卷。

docker network prune
删除所有未使用的网络。

七、Docker Compose 相关命令

docker-compose up
启动服务,根据 docker-compose.yml 文件启动多个容器。

比如:

$ docker-compose upCreating network "myapp_default" with the default driverCreating myapp_db_1  ... doneCreating myapp_web_1 ... done

根据 docker-compose.yml 启动服务。

docker-compose down
停止并删除服务和容器。

docker-compose logs
查看 Docker Compose 启动的服务的日志。

docker-compose build
构建服务。

八、其他常用命令

docker info
显示 Docker 系统的详细信息。

docker events
查看 Docker 守护进程的事件流。

docker save <image_name> > <file_name>.tar
将镜像保存为一个 .tar 文件。

docker load < <file_name>.tar
.tar 文件加载 Docker 镜像。

docker login
登录 Docker Hub 或其他 Docker 注册中心。

docker logout
登出 Docker Hub 或其他 Docker 注册中心。

本文作者:陈睿|mikechen

文章来源:mikechen.cc

相关推荐

使用nginx配置域名及禁止直接通过IP访问网站

前段时间刚搭建好这个网站,一直没有关注一个问题,那就是IP地址也可以访问我的网站,今天就专门研究了一下nginx配置问题,争取把这个问题研究透彻。1.nginx配置域名及禁止直接通过IP访问先来看n...

如何在 Linux 中使用 PID 号查找进程名称?

在Linux的复杂世界中,进程是系统运行的核心,每个进程都由一个唯一的「进程ID」(PID)标识。无论是系统管理员在排查失控进程,还是开发者在调试应用程序,知道如何将PID映射到对应的进程名称都是一项...

Linux服务器硬件信息查询与日常运维命令总结

1.服务器硬件信息查询1.1CPU信息查询命令功能描述示例lscpu显示CPU架构、核心数、线程数等lscpucat/proc/cpuinfo详细CPU信息(型号、缓存、频率)cat/proc/c...

Ubuntu 操作系统常用命令详解(ubuntu常用的50个命令)

UbuntuLinux是一款流行的开源操作系统,广泛应用于服务器、开发、学习等场景。命令行是Ubuntu的灵魂,也是高效、稳定管理系统的利器。本文按照各大常用领域,详细总结Ubuntu必学...

从 0 到 1:打造基于 Linux 的私有 API 网关平台

在当今微服务架构盛行的时代,API网关作为服务入口和安全屏障,其重要性日益凸显。你是否想过,不依赖商业方案,完全基于开源组件,在Linux上构建一个属于自己的私有API网关平台?今天就带你...

Nginx搭建简单直播服务器(nginx 直播服务器搭建)

前言使用Nginx+Nginx-rtmp-module在Ubuntu中搭建简单的rtmp推流直播服务器。服务器环境Ubuntu16.04相关概念RTMP:RTMP协议是RealTi...

Linux连不上网?远程卡?这篇网络管理指南你不能错过!

大家好!今天咱们聊个所有Linux用户都躲不开的“老大难”——网络管理。我猜你肯定遇到过这些崩溃时刻:新装的Linux系统连不上Wi-Fi,急得直拍桌子;远程服务器SSH连不上,提示“Connecti...

7天从0到上线!手把手教你用Python Flask打造爆款Web服务

一、为什么全网开发者都在疯学Flask?在当今Web开发的战场,Flask就像一把“瑞士军刀”——轻量级架构让新手3天速成,灵活扩展能力又能支撑百万级用户项目!对比Django的“重型装甲”,Flas...

nginx配置文件详解(nginx反向代理配置详解)

Nginx是一个强大的免费开源的HTTP服务器和反向代理服务器。在Web开发项目中,nginx常用作为静态文件服务器处理静态文件,并负责将动态请求转发至应用服务器(如Django,Flask,et...

30 分钟搞定 Docker 安装与 Nginx 部署,轻松搭建高效 Web 服务

在云计算时代,利用容器技术快速部署应用已成为开发者必备技能。本文将手把手教你在阿里云轻量应用服务器上,通过Docker高效部署Nginx并发布静态网站,全程可视化操作,新手也能轻松上手!一、准...

Nginx 配置实战:从摸鱼到部署,手把手教你搞定生产级配置

各位摸鱼搭子们!今天咱不聊代码里的NullPointerException,改聊点「摸鱼必备生存技能」——Nginx配置!先灵魂拷问一下:写了一堆接口却不会部署?服务器被恶意请求打崩过?静态资源加载...

如何使用 Daphne + Nginx + supervisor部署 Django

前言:从Django3.0开始支持ASGI应用程序运行,使Django完全具有异步功能。Django目前已经更新到5.0,对异步支持也越来越好。但是,异步功能将仅对在ASGI下运行的应用程序可用...

Docker命令最全详解(39个最常用命令)

Docker是云原生的核心,也是大厂的必备技能,下面我就全面来详解Docker核心命令@mikechen本文作者:陈睿|mikechen文章来源:mikechen.cc一、Docker基本命令doc...

ubuntu中如何查看是否已经安装了nginx

在Ubuntu系统中,可以通过以下几种方法检查是否已安装Nginx:方法1:使用dpkg命令(适用于Debian/Ubuntu)bashdpkg-l|grepnginx输出...

OVN 概念与实践(德育概念的泛化在理论和实践中有什么弊端?)

今天我们来讲解OVN的概念和基础实践,要理解本篇博客的内容,需要前置学习:Linux网络设备-Bridge&VethPairLinux网络设备-Bridge详解OVS+Fa...

取消回复欢迎 发表评论: