常用的docker命令大全详解

分类:知识百科 日期: 点击:0

Docker是一种负责创建、部署和运行应用程序的容器化技术。使用Docker可以将应用程序及其所有依赖项打包成一个单独的镜像,在任何地方运行这个镜像,而无需担心环境问题。在本文中,我们将介绍一些常用的Docker命令。

容器管理

运行容器

docker run

此命令用于新建并启动一个容器。如果本地没有对应的镜像,它会从远程拉取镜像。下面是几个示例:

docker run -d -p 80:80 nginx    # 启动一个Nginx容器,并映射到主机的80端口
docker run --name my-mongo -d mongo  # 启动一个MongoDB容器,并指定名称为my-mongo

列出容器

docker ps

此命令用于列出正在运行的容器。可以使用-a选项来显示所有容器,即使它们已经停止了。

docker ps                      # 列出正在运行的容器
docker ps -a                   # 列出所有容器
docker ps -f "status=exited"   # 列出所有状态为exited的容器

停止容器

docker stop

此命令用于停止一个运行中的容器。如果你想立即关闭容器,可以使用docker kill命令。

docker stop my-mongo           # 停止名为my-mongo的容器
docker kill my-nginx           # 立即关闭名为my-nginx的容器

删除容器

docker rm

此命令用于删除一个或多个容器。如果你想删除正在运行的容器,需要先使用docker stop或docker kill命令停止容器。

docker rm my-mongo            # 删除名为my-mongo的容器
docker rm $(docker ps -a -q)   # 删除所有容器

镜像管理

拉取镜像

docker pull

此命令用于从Docker仓库拉取一个镜像。你可以在docker search命令中查找镜像名称。

docker pull nginx              # 拉取最新版本的Nginx镜像
docker pull ubuntu:20.04       # 拉取Ubuntu 20.04版本的镜像

列出镜像

docker images

此命令用于列出本地已经下载的镜像。

docker images                  # 列出所有本地镜像
docker images nginx            # 列出所有名称为nginx的本地镜像

删除镜像

docker rmi

此命令用于删除一个或多个本地镜像。

docker rmi nginx               # 删除所有名称为nginx的本地镜像
docker rmi nginx:1.19          # 删除名称为nginx,版本为1.19的本地镜像

Docker网络

创建网络

docker network create

此命令用于创建一个新的Docker网络

docker network create my_network   # 创建名为my_network的网络

列出网络

docker network ls

此命令用于列出所有Docker网络。

docker network ls                 # 列出所有网络

连接容器到网络

docker network connect

此命令用于将一个容器连接到一个网络中。

docker network connect my_network my-mongo   # 将容器my-mongo连接到my_network网络

断开容器与网络的连接

docker network disconnect

此命令用于断开一个容器与一个网络的连接。

docker network disconnect my_network my-mongo  # 断开my-mongo容器

与my_network网络的连接

Docker数据卷

创建数据卷

docker volume create

此命令用于创建一个新的Docker数据卷。

docker volume create my_volume   # 创建名为my_volume的数据卷

列出数据卷

docker volume ls

此命令用于列出所有Docker数据卷。

docker volume ls                 # 列出所有数据卷

挂载数据卷

docker run -v

此命令用于将一个数据卷挂载到一个容器中。

docker run -d --name my-mongo -v my_volume:/data/db mongo   # 将my_volume数据卷挂载到my-mongo容器的/data/db目录下

删除数据卷

docker volume rm

此命令用于删除一个或多个数据卷。

docker volume rm my_volume       # 删除名为my_volume的数据卷
docker volume rm $(docker volume ls -q)  # 删除所有数据卷

Docker Compose

安装Docker Compose

需要安装Docker Compose。它是一个独立的工具,可以管理多个Docker容器。

编写Docker Compose文件

在项目根目录下创建一个docker-compose.yml文件,并添加以下内容:

version: '3'
services:
  web:
    build: .
    ports:
      - "5000:5000"
  redis:
    image: "redis:alpine"

上面的配置文件将启动两个服务:web和redis。其中,web服务会使用当前目录下的Dockerfile构建自己的镜像,并将容器端口5000映射到主机端口5000;redis服务则直接从Docker Hub上拉取官方Redis镜像。

启动Docker Compose

docker-compose up

此命令用于启动Docker Compose环境。

docker-compose up              # 启动所有服务
docker-compose up -d           # 启动所有服务,并在后台运行

停止Docker Compose

docker-compose down

此命令用于停止并删除Docker Compose环境中的所有容器。

docker-compose down            # 停止并删除所有容器

以上就是一些常用的Docker命令,它们可以帮助你管理Docker容器、镜像、网络和数据卷。当然,这些命令只是冰山一角,Docker还有很多其他功能和命令,需要你去探索和学习。

标签:

版权声明

1. 本站所有素材,仅限学习交流,仅展示部分内容,如需查看完整内容,请下载原文件。
2. 会员在本站下载的所有素材,只拥有使用权,著作权归原作者所有。
3. 所有素材,未经合法授权,请勿用于商业用途,会员不得以任何形式发布、传播、复制、转售该素材,否则一律封号处理。
4. 如果素材损害你的权益请联系客服QQ:77594475 处理。