docker的常用命令


Docker安装

Docker安装

镜像管理

列出镜像

docker images

命令解析

  • docker: 这是 Docker 命令行工具的名称,用于与 Docker 守护程序进行通信。

  • images: 这是 Docker 命令的一个子命令,用于列出本地存储的镜像。

功能

  • docker images 命令用于列出本地存储的所有 Docker 镜像。

输出信息

执行 docker images 命令后,会输出一个表格,包含以下列:

  • REPOSITORY: 镜像的仓库源(repository)名称。

  • TAG: 镜像的标签(tag),标识镜像的不同版本。

  • IMAGE ID: 镜像的唯一标识符,通常是一个 SHA256 的哈希值。

  • CREATED: 镜像创建的时间戳。

  • SIZE: 镜像的大小,通常以 MB(兆字节)为单位。

示例

REPOSITORY      TAG       IMAGE ID       CREATED        SIZE
ubuntu          latest    94e814e2efa8   5 days ago     64.2 MB
nginx           latest    23d1a0d9042a   2 weeks ago    132 MB

在这个示例中,列出了两个镜像:

  • 一个是名为 ubuntu 的镜像,标签为 latest,创建于 5 天前,大小为 64.2 MB。

  • 另一个是名为 nginx 的镜像,标签为 latest,创建于 2 周前,大小为 132 MB。

用途

  • 了解本地存储的镜像信息,包括镜像的来源、版本、创建时间以及大小。

  • 可以根据列出的镜像信息选择合适的镜像来运行容器,或者删除不再需要的镜像来释放磁盘空间。
    在这里插入图片描述

拉取镜像

docker pull <image_name>

在这里插入图片描述

构建镜像

docker build -t <image_name> <path_to_Dockerfile>

查找镜像

docker search <image_name>

从Docker Hub查找镜像
在这里插入图片描述

删除镜像

docker rmi <image_name>

在这里插入图片描述

清理无用镜像

docker image prune

容器管理

运行容器

docker run <image_name>

命令解析

  • docker: 这是 Docker 命令行工具的名称,用于与 Docker 守护程序进行通信。
  • run: 这是 Docker 命令的一个子命令,指示 Docker 启动一个新的容器。
  • <image_name>: 这是要运行的容器的镜像名称。

运行容器

  1. Docker 检查本地是否已经存在指定的镜像。如果不存在,它会尝试从 Docker Hub 或者其他注册表拉取相应的镜像。

  2. Docker 使用指定的镜像创建一个新的容器实例。

  3. Docker 启动容器,并根据镜像的设置配置容器的环境变量、网络、存储等。这包括挂载数据卷、指定环境变量、设置网络参数等。

  4. Docker 启动容器的进程。这通常是容器镜像中指定的默认命令,但你也可以在 docker run 命令中通过附加参数来指定要运行的特定命令。

可选参数

  • -d--detach: 以守护进程模式运行容器,即在后台运行容器。

  • -p--publish: 将容器的端口映射到主机的指定端口。

  • -v--volume: 将主机文件系统的路径挂载到容器内部,用于共享文件或数据。

  • -e--env: 设置容器的环境变量。

  • --name: 为容器指定一个名称,以便于识别和管理。

  • -it: 这两个参数一起使用,表示使用交互式终端(tty)运行容器,通常用于与容器进行交互式操作。

示例

docker run -d -p 8080:80 --name my_container my_image

这个示例命令将会:

  • 以守护进程模式在后台运行镜像 my_image 创建的容器。

  • 将容器的端口 80 映射到主机的端口 8080。

  • 给容器指定名称为 my_container

这样就创建并运行了一个名为 my_container 的容器,它基于镜像 my_image 并且在后台监听主机的端口 8080

列出容器

docker ps

列出所有容器(包括停止的)

docker ps -a

停止容器

docker stop <container_id>

启动容器

docker start <container_id>

进入容器

docker exec -it <container_id> /bin/bash

删除容器

docker rm <container_id>

清理无用容器

docker container prune

当然,还有其他一些常用的 Docker 命令,包括容器日志、数据卷、端口映射等管理。

容器日志

查看容器日志

docker logs <container_id>

查看实时容器日志

docker logs -f <container_id>

数据卷管理

创建数据卷

docker volume create <volume_name>

列出数据卷

docker volume ls

删除数据卷

docker volume rm <volume_name>

端口映射

运行容器并映射端口

docker run -p <host_port>:<container_port> <image_name>

安全相关

运行容器并限制资源

docker run --name <container_name> --memory <limit> --cpu-shares <limit> <image_name>

当然,还有更多 Docker 命令,包括容器状态、镜像构建优化、容器文件拷贝等等。

容器详情

查看容器详细信息

docker inspect <container_id>

查看容器状态

docker inspect <container_id> | grep "Status"

镜像构建优化

构建镜像并指定缓存策略

docker build --no-cache -t <image_name> <path_to_Dockerfile>

容器文件拷贝

从容器拷贝文件到主机

docker cp <container_id>:<source_path_in_container> <destination_path_on_host>

从主机拷贝文件到容器

docker cp <source_path_on_host> <container_id>:<destination_path_in_container>

其他操作

显示 Docker 版本信息

docker version

显示 Docker 系统信息

docker info

显示 Docker 网络信息

docker network ls

创建 Docker 网络

docker network create <network_name>

删除 Docker 网络

docker network rm <network_name>

相关推荐

  1. [Docker] 命令

    2024-03-25 04:18:01       27 阅读
  2. docker 命令

    2024-03-25 04:18:01       32 阅读
  3. docker 命令

    2024-03-25 04:18:01       35 阅读
  4. Docker 命令

    2024-03-25 04:18:01       35 阅读
  5. docker 命令

    2024-03-25 04:18:01       38 阅读
  6. docker 命令

    2024-03-25 04:18:01       17 阅读
  7. Docker命令

    2024-03-25 04:18:01       17 阅读

最近更新

  1. TCP协议是安全的吗?

    2024-03-25 04:18:01       18 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-03-25 04:18:01       19 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-03-25 04:18:01       19 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-03-25 04:18:01       20 阅读

热门阅读

  1. clickhouse介绍

    2024-03-25 04:18:01       20 阅读
  2. 如何借助API提升产品设计的用户体验

    2024-03-25 04:18:01       18 阅读
  3. 数列特征

    2024-03-25 04:18:01       19 阅读
  4. MongoDB聚合运算符:$integral

    2024-03-25 04:18:01       15 阅读
  5. 简单杨氏矩阵

    2024-03-25 04:18:01       18 阅读
  6. vue3 + Element + nodejs 大文件上传、断点续传

    2024-03-25 04:18:01       21 阅读
  7. web渗透测试漏洞流程:红队攻防流程详细大纲

    2024-03-25 04:18:01       18 阅读
  8. linux telnet 用来判断网络是否通

    2024-03-25 04:18:01       21 阅读