docker-002常用命令

发布于:2024-04-18 ⋅ 阅读:(63) ⋅ 点赞:(0)

启动类命令

  1. 启动
systemctl start docker
  1. 停止
systemctl stop docker
  1. 重启
systemctl restart docker
  1. 查看状态
systemctl status docker
  1. 开机启动
systemctl enable docker
  1. 概要
docker info
  1. 总体帮助文档
docker --help
  1. 命令帮助文档
docker 具体命令 --help

镜像命令

  1. 查看主机上的镜像
    命令
    docker images
    参数
    -a:列出本地所有镜像,含历史映射层
    -q:只显示镜像ID
    示例

    docker images -a
    
  2. 从仓库查询某个镜像
    命令
    docker search 镜像名称
    参数及示例
    –limit N:显示N条,默认25

    docker search redis --limit 1
    
  3. 下载镜像
    命令
    docker pull 镜像名称:镜像版本
    参数及示例
    下载最新

    docker pull redis 
    

    下载指定版本

    docker pull redis:6.0.8
    
  4. 查看镜像/容器/卷标占用空间
    命令
    docker system df
    参数及示例

    docker system df
    
  5. 删除镜像
    命令
    docker rmi 镜像ID或名称
    参数及示例
    普通删除

    docker rmi d2c94e258dcb
    

    删除多个

    docker rmi  d2c94e258dcb d2c94e25778f 
    

    -f:强制删除

    docker rmi -f d2c94e258dcb
    

    删除全部

    1. 使用docker images -qa查询镜像ID
    2. 使用docker的命令连接,将删除命令和镜像查询命令组合
    docker rmi -f $(docker images -qa)
    

容器命令

  1. 新建并启动容器
    命令:docker run 镜像名[:版本]
    示例
    1.1. 普通创建启动

    docker run 镜像名
    

    1.2 --name:指定名称启动,不指定随机分配

    docker run --name=ubuntu01 镜像名
    

    1.3 -d:后台启动并返回容器ID

    docker run -d --name=ubuntu02 镜像名
    

    1.4 -P:随机端口映射

    docker run --name=ubuntu03 -P 镜像名
    

    1.5 -p:指定端口映射
    格式1: -p 主机端口:容器端口

    docker run --name=ubuntu04 -p 25565:25565 镜像名
    

    格式2:-p 主机地址:主机端口:容器端口

    docker run --name=ubuntu05 -p 192.168.8.235:25566:25566 镜像名
    

    1.6 -t:为容器重新分配一个伪输入终端,常与-i结合
    1.7 -i:以交互模式运行容器,常与-t结合

    docker run -it --name=ubuntu07 镜像名 /bin/bash
    

    /bin/bash是命令,我们希望使用交互式终端,所以用/bin/bash,此时就可以向操作普通的linux一样书写shell命令了。使用exit退出终端

  2. 列出正在运行的容器
    命令:docker ps
    示例
    2.1 普通

    docker ps
    

    2.2 -a:列出当前和历史运行过的容器

    docker ps -a
    

    2.3 -l:显示最近创建的容器

    docker ps -l
    

    2.4 -n:显示最近创建的n容器

    docker ps -n 3
    

    2.5 -q:静默模式,只显示容器编号

    docker ps -q
    
  3. 退出容器
    3.1 exit
    run进去容器,输入exit,退出,容器停止
    3.2 ctrl+p+q
    run进去容器,输入ctrl+p+q,退出,容器不停止

  4. 启动/停止容器(使用docker ps -a查看)
    4.1 启动已经停止的容器
    docker start 容器ID或容器名

    docker start ab239bb494ad
    docker start hopeful_chatelet
    

    4.2 重启容器
    docker restart 容器ID或容器名

    docker restart ab239bb494ad
    docker restart hopeful_chatelet
    

    4.3 停止容器
    docker stop 容器ID或容器名

    docker stop ab239bb494ad
    docker stop hopeful_chatelet
    

    4.4 强制停止容器
    docker kill 容器ID或容器名

    docker kill ab239bb494ad
    docker kill hopeful_chatelet
    

    4.5 删除已经停止的容器
    docker rm 容器ID
    普通删除

    docker rm ab239bb494ad
    

    -f:强制删除(不停止也能删除)

    docker rm -f ab239bb494ad
    

    删除所有(也是使用docker的续写模式$)

    docker rm -f $(docker ps -a -q)
    
  5. 查看容器日志
    docker logs 容器ID

    docker logs 6272264c49fe
    
  6. 查看容器内部细节
    docker inspect 容器ID

    docker inspect 6272264c49fe
    
  7. 以交互式进入正在运行的容器
    7.1 docker exec -it 容器ID bashShell(启动新的进程,退出容器不停止)

    docker exec -it 6272264c49fe /bin/bash
    

    7.2 docker attach 容器ID(不会启动新的进程,退出容器停止)

    docker attach 6272264c49fe 
    

    推荐使用7.1,因为退出不会导致容器停止,7.2会导致容器停止

  8. 从容器拷贝文件到主机
    docker cp 容器ID:容器文件路径 目标的主机路径

    docker cp 3d4666085f30:/data/1.txt /home/1.txt
    
  9. 导入导出容器
    9.1 导出容器
    docker export 容器ID > 文件名.tar

    docker export 3d4666085f30 > redis6.0.8.tar
    

    9.2 导入容器

    cat redis6.0.8.tar | docker import -  klcwqy/redis:6.0.8
    

    这时就产生了一个新的镜像klcwqy/redis:6.0.8,使用docker run即可


网站公告

今日签到

点亮在社区的每一天
去签到