Docker 命令大全


Docker 命令大全

Docker是一个开源的应用容器引擎,可以方便地打包、分发和运行应用。以下是Docker命令的详细说明。

容器命令

运行容器

docker run <options> <image> <command>

例如:

docker run -it ubuntu /bin/bash

参数解释:

  • -it:交互式地运行容器,并分配一个伪终端。
  • ubuntu:运行的镜像。
  • /bin/bash:指定的命令。

列出正在运行的容器

docker ps <options>

例如:

docker ps

参数解释:

  • -a:列出所有容器,包括已停止的容器。

停止容器

docker stop <container>

例如:

docker stop my_container

杀死容器

docker kill <container>

例如:

docker kill my_container

删除容器

docker rm <container>

例如:

docker rm my_container

进入容器

docker exec <options> <container> <command>

例如:

docker exec -it my_container /bin/bash

参数解释:

  • -it:交互式地进入容器,并分配一个伪终端。
  • my_container:容器的名称。
  • /bin/bash:指定的命令。

镜像命令

获取镜像

docker pull <image>

例如:

docker pull ubuntu

列出镜像

docker images <options>

例如:

docker images

参数解释:

  • -a:列出所有镜像,包括中间镜像。

删除镜像

docker rmi <image>

例如:

docker rmi ubuntu

构建镜像

docker build <options> <directory>

例如:

在一个名为my_project的文件夹下,有一个Dockerfile文件,内容如下:

FROM ubuntu
RUN apt-get update && apt-get install -y nginx
EXPOSE 80
CMD ["nginx", "-g", "daemon off;"]

要在my_project文件夹下构建一个my_nginx镜像,可以运行:

docker build -t my_nginx .

参数解释:

  • -t:制定标签。
  • .:指定构建上下文的路径。

查看镜像的历史记录

docker history <image>

例如:

docker history ubuntu

仓库命令

登录到DockerHub

docker login <options>

例如:

docker login

参数解释:

  • -u:用户名。
  • -p:密码。

从仓库中获取镜像

docker pull <repository>:<tag>

例如:

docker pull ubuntu:18.04

把镜像推送到仓库

docker push <repository>:<tag>

例如:

docker push my_username/my_repository:latest

列出本地缓存的镜像信息

docker image ls

例如:

docker image ls

网络命令

创建网络

docker network create <network>

例如:

docker network create my_network

列出网络

docker network ls

例如:

docker network ls

连接容器到网络

docker network connect <network> <container>

例如:

docker network connect my_network my_container

断开容器与网络的连接

docker network disconnect <network> <container>

例如:

docker network disconnect my_network my_container

删除网络

docker network rm <network>

例如:

docker network rm my_network

数据卷命令

创建数据卷

docker volume create <volume>

例如:

docker volume create my_volume

列出数据卷

docker volume ls

例如:

docker volume ls

删除数据卷

docker volume rm <volume>

例如:

docker volume rm my_volume

在容器中挂载数据卷

docker run -v <host_path>:<container_path> <image>

例如:

docker run -v /data:/app/data my_image

总结

通过以上Docker命令的学习,就可以开发、管理和维护Docker应用程序。这些命令涵盖了容器、镜像、仓库、网络和数据卷等方面。熟悉这些命令可以使开发更加高效、协调和互动。