Docker常用命令学习和总结

文章目录

  • 0.前言
    • 1. 镜像(Images)相关命令:
      • 1. `docker images`:列出本地的镜像。
      • 2. `docker pull`:从镜像仓库中下载镜像。
      • 3. `docker push`:将本地镜像推送到镜像仓库。
      • 4. `docker build`:根据 Dockerfile 构建镜像。
      • 5. `docker tag`:给镜像打标签。
      • 6. `docker rmi`:删除本地的一个或多个镜像。
    • 2. 容器(Containers)相关命令:
      • 1. `docker ps`:
      • 2. `docker run`:
      • 3. `docker start`:
      • 4. `docker stop`:
      • 5. `docker restart`:
      • 6. `docker rm`:
      • 7. `docker logs`:
      • 8. `docker exec`:
      • 9. `docker pause`:
      • 10. `docker unpause`:
      • 11. `docker inspect`:
      • 12. `docker top`:
    • 3. 仓库(Registry)相关命令:
    • 4. 网络(Network)相关命令:
      • 1. `docker network ls`:
      • 2. `docker network create`:
      • 3. `docker network connect`:
      • 4. `docker network disconnect`:
    • 5. 数据卷(Volumes)相关命令:
  • 1.参考文档

0.前言

学习并掌握 Docker 命令是使用 Docker 的关键,因为通过命令行工具,你可以管理容器、构建镜像、网络配置等。在本文中,我整理了一些常用的 Docker 命令,为大家提供一个学习和总结的参考 这里的命令示例适用于 Docker 19.03 版本及以上

Docker常用命令学习和总结_第1张图片
Docker 命令可以根据其功能和作用进行分类。下面是一些常见的 Docker 命令分类:

1. 镜像(Images)相关命令:

  • docker images:列出本地的镜像。
  • docker pull:从镜像仓库中下载镜像。
  • docker push:将本地镜像推送到镜像仓库。
  • docker build:根据 Dockerfile 构建镜像。
  • docker tag:给镜像打标签。
  • docker rmi:删除本地的一个或多个镜像。
    以下是针对镜像(Images)相关命令的详细解释:

1. docker images:列出本地的镜像。

  • 参数解释:无
  • 示例:docker images
  • 结果示例:
    REPOSITORY    TAG       IMAGE ID       CREATED         SIZE
    nginx         latest    abcdef123456   2 weeks ago     138MB
    myapp         latest    789ghi456jkl   4 days ago      250MB
    
  • 解释:该命令用于列出本地已经下载的镜像。它会显示镜像的仓库名(REPOSITORY)、标签(TAG)、镜像ID(IMAGE ID)、创建时间(CREATED)和大小(SIZE)等信息。

2. docker pull:从镜像仓库中下载镜像。

  • 参数解释:镜像名称
  • 示例:docker pull nginx:latest
  • 结果示例:从镜像仓库中下载最新版的 NGINX 镜像。
  • 解释:该命令用于从指定的镜像仓库中下载镜像。您需要指定镜像的名称和标签,例如 nginx:latest。Docker 会自动从默认的镜像仓库(如 Docker Hub)中下载镜像。

3. docker push:将本地镜像推送到镜像仓库。

  • 参数解释:镜像名称
  • 示例:docker push myusername/myimage:latest
  • 结果示例:将本地的镜像推送到名为 “myusername/myimage” 的镜像仓库。
  • 解释:该命令用于将本地的镜像推送到指定的镜像仓库。您需要指定镜像的名称和标签,并且需要在名称前加上仓库用户名(如 Docker Hub 的用户名)。在执行推送之前,您需要先登录到目标镜像仓库。

4. docker build:根据 Dockerfile 构建镜像。

  • 参数解释:
    • -t:为镜像指定名称和标签
    • .:Dockerfile 所在的目录路径
  • 示例:docker build -t myapp:latest .
  • 结果示例:根据当前目录下的 Dockerfile 构建名为 “myapp” 的镜像。
  • 解释:该命令用于根据 Dockerfile 构建镜像。您需要在命令中使用 -t 参数为镜像指定名称和标签,并且需要提供包含 Dockerfile 的目录路径(通常为 .,表示当前目录)。

5. docker tag:给镜像打标签。

  • 参数解释:现有镜像名称和标签、新镜像名称和标签
  • 示例:docker tag myapp:latest myusername/myapp:1.0
  • 结果示例:为现有的 “myapp:latest” 镜像打上新的标签 “myusername/myapp:1.0”。
  • 解释:该命令用于给已有的镜像打上新的标签。您需要指定现有镜像的名称和标签,以及新的镜像名称和标签。

6. docker rmi:删除本地的一个或多个镜像。

  • 参数解释:镜像名称或镜像ID
  • 示例:docker rmi myapp:latest
  • 结果示例:删除名为 “myapp:latest” 的本地镜像。
  • 解释:该命令用于删除本地的一个或多个镜像。您需要提供要删除的镜像的名称或镜像ID。如果要删除多个镜像,可以在命令中同时指定多个镜像名称或镜像ID。

2. 容器(Containers)相关命令:

  • docker ps:列出正在运行的容器。
  • docker run:创建并运行一个容器。
  • docker start:启动一个已停止的容器。
  • docker stop:停止一个运行中的容器。
  • docker restart:重启一个容器。
  • docker rm:删除一个或多个容器。
  • docker logs:查看容器的日志。
  • docker exec:在运行中的容器中执行命令。
  • docker pause:暂停一个运行中的容器。
  • docker unpause:取消暂停一个容器。
  • docker inspect:获取容器的详细信息。
  • docker top:查看容器内运行的进程。
    当然,以下是常用 Docker 命令的用法示例:

1. docker ps

列出正在运行的容器。

docker ps

使用 -a 选项可以列出所有容器,包括已停止的容器。

docker ps -a

2. docker run

创建并运行一个容器。

docker run -d -p 8080:80 nginx

上述命令创建并运行一个名为 nginx 的容器,将容器的 80 端口映射到主机的 8080 端口,并在后台运行。

3. docker start

启动一个已停止的容器。

docker start <容器ID/容器名称>

4. docker stop

停止一个运行中的容器。

docker stop <容器ID/容器名称>

5. docker restart

重启一个容器。

docker restart <容器ID/容器名称>

6. docker rm

删除一个或多个容器。

docker rm <容器ID/容器名称>

可以同时删除多个容器:

docker rm <容器ID1> <容器ID2>

使用 -f 选项可以强制删除正在运行的容器。

7. docker logs

查看容器的日志。

docker logs <容器ID/容器名称>

可以使用 -f 选项实时跟踪日志输出。

docker logs -f <容器ID/容器名称>

8. docker exec

在运行中的容器中执行命令。

docker exec -it <容器ID/容器名称> <命令>

使用 -it 选项可以进入交互模式。

9. docker pause

暂停一个运行中的容器。

docker pause <容器ID/容器名称>

10. docker unpause

取消暂停一个容器。

docker unpause <容器ID/容器名称>

11. docker inspect

获取容器的详细信息。

docker inspect <容器ID/容器名称>

12. docker top

查看容器内运行的进程。

docker top <容器ID/容器名称>

3. 仓库(Registry)相关命令:

  • docker login:登录到一个镜像仓库。
  • docker logout:登出一个镜像仓库。
  • docker search:在镜像仓库中搜索镜像。

4. 网络(Network)相关命令:

当然,以下是一些与 Docker 网络相关的详细输出命令:

1. docker network ls

列出 Docker 网络。

docker network ls

输出将显示网络的ID、名称、驱动程序和范围。

2. docker network create

创建一个 Docker 网络。

docker network create my-network

上述命令将创建一个名为 “my-network” 的网络。

可以通过添加选项来指定网络的驱动程序、子网范围等。

docker network create --driver bridge --subnet 172.18.0.0/16 my-network

上述命令将创建一个使用桥接驱动程序和指定子网范围的网络。

3. docker network connect

将容器连接到一个网络。

docker network connect my-network my-container

上述命令将将名为 “my-container” 的容器连接到名为 “my-network” 的网络。

4. docker network disconnect

将容器从一个网络断开。

docker network disconnect my-network my-container

上述命令将将名为 “my-container” 的容器从名为 “my-network” 的网络断开。

5. 数据卷(Volumes)相关命令:

  • docker volume ls:列出 Docker 数据卷。
  • docker volume create:创建一个 Docker 数据卷。
  • docker volume inspect:查看数据卷的详细信息。
  • docker volume rm:删除一个 Docker 数据卷。

1.参考文档

  1. Docker 官方文档:https://docs.docker.com/
    官方文档 提供了详细的文档、教程和指南,覆盖了 Docker 的各个方面,包括安装、使用、管理容器、构建镜像等。

  2. Docker 教程 - 菜鸟教程:https://www.runoob.com/docker/docker-tutorial.html
    菜鸟教程提供了一个简单易懂的 Docker 教程,适合初学者入门。它包含了 Docker 的基础知识、常用命令和实例演示,帮助你快速上手 Docker。

你可能感兴趣的:(docker从入门到精通,docker,学习,后端,运维)