Docker 常用命令及解析

docker配置2个月前更新 xiao
50 0

Docker 常用命令及解析

1. 查看 Docker 版本

docker --version
  • 作用:查看当前 Docker 的版本信息。

2. 启动 Docker 服务

sudo systemctl start docker
  • 作用:启动 Docker 服务。

3. 停止 Docker 服务

sudo systemctl stop docker
  • 作用:停止 Docker 服务。

4. 查看 Docker 状态

sudo systemctl status docker
  • 作用:查看 Docker 服务的运行状态。

以上的命令都是linux中使用的命令

5. 拉取镜像

docker pull <image_name>
  • 作用:从 Docker Hub 或指定镜像仓库拉取镜像。例如:docker pull ubuntu:latest

6. 列出所有镜像

docker images
  • 作用:查看本地存储的所有镜像。

7. 列出所有容器

docker ps
  • 作用:列出当前正在运行的容器。

  • 参数

    • -a:列出所有容器,包括未运行的容器。
    • -q:只显示容器 ID。

8. 运行一个容器

docker run -d --name <container_name> <image_name>
  • 作用:运行一个容器,-d表示以后台模式运行,--name指定容器名称。
  • 示例docker run -d --name my_container ubuntu:latest

9. 查看容器日志

docker logs <container_name_or_id>
  • 作用:查看容器的输出日志。

10. 停止容器

docker stop <container_name_or_id>
  • 作用:停止一个正在运行的容器。

11. 启动已停止的容器

docker start <container_name_or_id>
  • 作用:启动一个已经停止的容器。

12. 删除容器

docker rm <container_name_or_id>
  • 作用:删除一个容器。容器必须停止后才能删除。

13. 删除镜像

docker rmi <image_name_or_id>
  • 作用:删除一个镜像。删除前需确保该镜像没有被容器使用。

14. 查看容器资源使用情况

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

15. 进入容器

docker exec -it <container_name_or_id> /bin/bash
  • 作用:以交互模式进入正在运行的容器中。/bin/bash是容器中常见的命令行。

16. 查看 Docker 网络

docker network ls
  • 作用:列出所有 Docker 网络。

17. 创建自定义网络

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

18. 查看容器的网络设置

docker inspect <container_name_or_id>
  • 作用:查看容器的详细信息,包括网络设置、存储卷等。

19. 导出容器

docker export <container_name_or_id> > <output.tar>
  • 作用:将容器的文件系统导出为 tar 包。

20. 导入容器

docker import <input.tar> <image_name>
  • 作用:从一个 tar 包导入容器镜像。

21. 查看 Docker 系统信息

docker info
  • 作用:显示 Docker 系统的详细信息,包括安装的版本、存储驱动、容器数量等。

22. 查看容器资源限制

docker stats <container_name_or_id>
  • 作用:查看指定容器的资源使用情况。

23. 构建镜像

docker build -t <image_name> <path>
  • 作用:从指定路径(通常是 Dockerfile 文件所在路径)构建一个镜像。

24. 查看当前 Docker 配置

docker info
  • 作用:查看 Docker 主机的详细配置,包括操作系统、存储驱动、容器数量等。

25. Docker 容器连接端口

docker run -d -p <host_port>:<container_port> <image_name>
  • 作用:将主机端口与容器端口映射。-p指定端口映射规则。

  • 示例docker run -d -p 8080:80 nginx

26. 使用 Docker Compose 启动服务

docker-compose up -d
  • 作用:通过 Docker Compose 启动服务,-d表示后台启动。

27. 使用 Docker Compose 停止服务

docker-compose down
  • 作用:停止并删除所有 Docker Compose 创建的容器、网络等资源。

28. 查看 Docker Compose 状态

docker-compose ps
  • 作用:查看 Docker Compose 启动的服务状态。

29. 查看 Docker 容器的执行命令

docker inspect --format '{{.Config.Cmd}}' <container_name_or_id>
  • 作用:查看容器的启动命令。

30. 持久化数据卷

docker run -v <host_path>:<container_path> <image_name>
  • 作用:将宿主机的目录挂载到容器中,以实现数据持久化。

  • 示例docker run -v /host/data:/container/data ubuntu

31. 使用 Docker 创建和管理数据卷

docker volume create <volume_name>
  • 作用:创建一个 Docker 卷。
docker volume ls
  • 作用:列出所有 Docker 卷。
docker volume rm <volume_name>
  • 作用:删除一个 Docker 卷。

32. Docker 镜像清理

docker image prune
  • 作用:清理未使用的 Docker 镜像。
docker system prune
  • 作用:清理未使用的镜像、容器、网络等资源。

常用参数说明

  • -d:在后台运行容器。
  • -p:映射主机和容器端口。
  • -v:挂载数据卷。
  • --name:指定容器的名称。
  • -it:以交互模式启动容器并进入终端。

总结

最常用命令:
docker创建容器命令,包括挂在硬盘,映射端口,启用bash,命名的功能:

docker run -it  --name my_container -v /host/path:/container/path -p 8080:80 <image_name> /bin/bash

创建 Docker 容器时,我们通常会使用一些常见的参数来配置容器,包括挂载硬盘、映射端口、启用 bash 终端以及指定容器的名称。下面是一个包含这些操作的 docker run 命令示例:

1. 创建并命名容器

使用 --name 来为容器指定名称。容器名称用于标识和管理容器。

docker run --name my_container <image_name>

2. 挂载硬盘(数据卷)

使用 -v--mount 参数来挂载硬盘或目录。可以将宿主机上的目录挂载到容器内部,保持数据的持久性。

  • -v 格式
    -v <host_path>:<container_path>
    
  • --mount 格式
    --mount type=bind,source=<host_path>,target=<container_path>
    

3. 映射端口

使用 -p 参数将容器的端口映射到宿主机端口,使得外部能够访问容器内的服务。

-p <host_port>:<container_port>

例如,映射宿主机的 8080 端口到容器的 80 端口:

-p 8080:80

4. 启用 Bash 终端

使用 -it 选项启用交互式终端,-i 表示保持标准输入流,-t 表示分配一个伪终端。然后,指定容器内要执行的命令,通常是 /bin/bash 以进入容器的 bash shell。

-it <image_name> /bin/bash

5. 完整命令示例

结合上述所有操作,下面是一个创建并命名容器,挂载硬盘、映射端口,启用 Bash 终端的完整示例:

docker run -it --name my_container -v /host/path:/container/path -p 8080:80 <image_name> /bin/bash

6. 参数解释

  • -it:启用交互式终端,进入容器时使用 Bash。
  • --name my_container:为容器命名为 my_container
  • -v /host/path:/container/path:将宿主机的 /host/path 目录挂载到容器的 /container/path 目录。
  • -p 8080:80:将宿主机的 8080 端口映射到容器的 80 端口(例如,容器运行的是一个 web 服务)。
  • <image_name>:容器镜像的名称(如 ubuntu, nginx, mysql 等)。
  • /bin/bash:容器启动后运行 /bin/bash,进入容器的 bash shell。

7. 其他常见参数

  • 后台运行容器(detached mode)
    如果希望容器在后台运行而不进入交互模式,可以添加 -d 参数:

    docker run -d --name my_container -v /host/path:/container/path -p 8080:80 <image_name>
    
  • 设置环境变量
    使用 -e 参数设置环境变量:

    docker run -e ENV_VAR_NAME=value ...
    
  • 设置资源限制
    可以使用 --memory--cpus 来限制容器的资源使用:

    docker run --memory="512m" --cpus="1.5" ...
    

通过这些命令和参数,你可以灵活地控制容器的启动方式,挂载硬盘、映射端口以及配置其他选项,满足不同的使用场景。如果你有具体的需求或想了解更详细的参数,可以进一步探讨。

这份文档汇集了最常用的 Docker 命令和相关的参数说明,可以作为日常使用的参考。如果你需要某个具体命令的进一步说明或示例,随时告诉我!

© 版权声明

相关文章

暂无评论

暂无评论...