Docker常用的命令推荐

一、容器生命周期管理

  1. 创建并启动容器

    bash

    docker run [OPTIONS] IMAGE [COMMAND] [ARG...]
    

     
    • 常用选项:
      -d:后台运行(detached mode)
      -p:端口映射(如 -p 8080:80
      -v:挂载数据卷(如 -v /host/path:/container/path
      -e:设置环境变量(如 -e DB_USER=root
      --name:指定容器名称
      --restart=always:自动重启策略

    示例

    bash

    docker run -d -p 80:80 --name nginx nginx:alpine
    
  2. 查看容器

    bash

    docker ps [OPTIONS]
    
     
    • 选项:
      -a:显示所有容器(包括已停止的)
      -q:只显示容器 ID
  3. 停止 / 启动容器

    bash

    docker stop CONTAINER_ID/NAME  # 停止运行中的容器
    docker start CONTAINER_ID/NAME  # 启动已停止的容器
    docker restart CONTAINER_ID/NAME  # 重启容器
    
  4. 删除容器

    bash

    docker rm CONTAINER_ID/NAME  # 删除已停止的容器
    docker rm -f CONTAINER_ID/NAME  # 强制删除运行中的容器
    
  5. 进入容器

    bash

    docker exec -it CONTAINER_ID/NAME /bin/bash  # 交互式进入容器
    

二、镜像管理

  1. 拉取镜像

    bash

    docker pull IMAGE[:TAG]  # 拉取指定镜像
    
  2. 查看本地镜像

    bash

    docker images [OPTIONS]
    
  3. 构建镜像

    bash

    docker build [OPTIONS] PATH
    
     
    • 常用选项:
      -t:指定镜像标签(如 -t myapp:v1
      --no-cache:不使用缓存构建

    示例

    bash

    docker build -t myapp:v1 .  # 在当前目录构建镜像
    
  4. 推送镜像到仓库

    bash

    docker push IMAGE[:TAG]  # 推送到Docker Hub
    
  5. 删除镜像

    bash

    docker rmi IMAGE_ID/NAME[:TAG]  # 删除本地镜像
    

三、网络管理

  1. 查看网络

    bash

    docker network ls  # 列出所有网络
    
  2. 创建自定义网络

    bash

    docker network create [OPTIONS] NETWORK_NAME
    
     
    • 选项:
      --driver:指定网络驱动(默认 bridge)
  3. 连接容器到网络

    bash

    docker network connect NETWORK CONTAINER
    

四、数据卷管理

  1. 创建数据卷

    bash

    docker volume create VOLUME_NAME
    
  2. 查看数据卷

    bash

    docker volume ls  # 列出所有数据卷
    
  3. 挂载数据卷到容器

    bash

    docker run -v VOLUME_NAME:/container/path IMAGE
    

五、日志与监控

  1. 查看容器日志

    bash

    docker logs [OPTIONS] CONTAINER
    
     
    • 选项:
      -f:实时跟踪日志输出
      --tail N:显示最后 N 行日志
  2. 查看容器资源使用情况

    bash

    docker stats [CONTAINER...]  # 实时监控CPU、内存等
    

六、其他常用命令

  1. 查看容器详细信息

    bash

    docker inspect CONTAINER_ID/NAME
    
  2. 导出 / 导入容器

    bash

    docker export CONTAINER_ID > container.tar  # 导出容器为tar文件
    docker import container.tar new_image:tag  # 导入为新镜像
    
  3. 保存 / 加载镜像

    bash

    docker save IMAGE > image.tar  # 保存镜像为tar文件
    docker load < image.tar  # 加载tar文件为镜像
    
  4. 清理无用资源

    bash

    docker system prune [OPTIONS]  # 清理所有未使用的容器、网络、镜像
    

七、组合命令示例

  • 快速部署 Nginx 并映射端口

    bash

    docker run -d -p 80:80 --name webserver nginx:alpine
    
  • 构建并运行自定义应用

    bash

    # 编写Dockerfile
    echo "FROM python:3.9-slim\nCMD ['python', '-m', 'http.server', '8000']" > Dockerfile
    # 构建镜像
    docker build -t my-python-app .
    # 运行容器
    docker run -d -p 8000:8000 my-python-app
    
  • 在自定义网络中连接多个容器

    bash

    # 创建网络
    docker network create my-network
    # 运行MySQL容器
    docker run -d --name mysql --network my-network -e MYSQL_ROOT_PASSWORD=pass mysql:8
    # 运行应用容器并连接到同一网络
    docker run -d --name app --network my-network my-app-image
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值