• Docker笔记-常用命令


    镜像

    1、 查看镜像可用版本

    docker search 【镜像名称】

    //搜索mysql可用镜像
    $ docker search mysql
    //搜索debian可用镜像
    $ docker search debian
    
    • 1
    • 2
    • 3
    • 4

    2、拉取镜像到本地

    docker pull 【镜像名称】:【tag版本信息】

    //拖取mysql最新版本镜像
    $ docker pull mysql:latest
    //拖取mysql5.7版本镜像
    $ docker pull mysql:5.7
    //拖取debian最新版本镜像
    $ docker pull debian:latest
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6

    3、查看本地镜像

    docker images
    【镜像名称【tag版本信息】【镜像ID】
    ![image.png](https://img-blog.csdnimg.cn/img_convert/202c18789803bac03f30478661a17a08.png#clientId=u109db5e9-0941-4&crop=0&crop=0&crop=1&crop=1&from=paste&height=61&id=ud7ed7a07&margin=[object Object]&name=image.png&originHeight=61&originWidth=459&originalType=binary&ratio=1&rotation=0&showTitle=false&size=9616&status=done&style=none&taskId=u02dc3b14-0e73-4a9f-a379-6052f955df1&title=&width=459)

    4、修改镜像名称和tag版本

    docker tag 【镜像ID】【镜像名称】:【tag版本信息】

    $ docker tag 3218b38490ce mysql8.0.27:8.0.27
    
    • 1

    5、删除本地镜像

    docker rmi 【镜像名称】:【tag版本信息】

    #删除mysql:latest镜像
    $ docker rmi mysql:latest
    
    • 1
    • 2

    删除none的镜像

    $ docker rmi $(docker images | grep "none" | awk '{print $3}')
    
    • 1

    有时候删除失败提示先停止容器,则

    $ docker stop $(docker ps -a | grep "Exited" | awk '{print $1 }') //停止容器
    $ docker rm $(docker ps -a | grep "Exited" | awk '{print $1 }') //删除容器
    $ docker rmi $(docker images | grep "none" | awk '{print $3}') //删除镜像
    
    • 1
    • 2
    • 3

    6、镜像导出和导入

    #导出docker save [options] images [images...]
    docker save -o 路径/debian1.tar debian:v1
    #导入docker load [options]
    docker load -i 路径/debian1.tar
    
    • 1
    • 2
    • 3
    • 4

    容器

    1、查看当前容器

    其他命令
    docker ps //显示当前运行容器
    docker ps -a //显示所有容器

    2、运行容器

    docker run -itd --name 【容器名称】 参数 【镜像ID】

    docker run -itd --name 【容器名称】 参数 【镜像名称】:【tag版本信息】

    例如:
    #mysql 容器
    #使用镜像mysql:5.7.0以后台模式启动一个容器,并将容器命名为mysql-test
    $ docker run -itd --name mysql-test -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 mysql:5.7.0
    $ debian 容器
    #使用镜像debian以后台模式启动一个容器,并将容器命名为debian-test
    $ docker run -itd --name debian-test debian:v11
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7

    3、进入正在运行容器

    docker exec -it 【容器名称】 /bin/bash

    docker exec -it 【容器Id】 /bin/bash

    docker exec -it debian-test /bin/bash
    
    • 1

    4、退出容器

    在容器中直接输入
    exit //容器停止并退出
    ctrl+P+Q //容器不停止退出

    5、启动容器

    docker start 【容器名称】
    docker start 【容器ID】

    6、重启容器

    docker restart 【容器名称】
    docker restart 【容器ID】

    7、停止容器

    docker stop【容器名称】
    docker stop 【容器ID】
    docker kill 【容器ID】 //强制停止容器

    8、删除容器

    docker rm 【容器名称】
    docker rm -f【容器ID】

    删除所有容器

    docker rm $(docker ps -aq)

    强删

    如果不行,强制停止docker ,然后再删除
    launchctl list | grep docker 查到进程号然后kill掉
    image.png

    9、其他

    查看容器内部运行的进程

    docker top 【容器名称】
    docker top 【容器ID】

    查看容器内部的标准输出

    docker logs -f【容器名称】
    docker logs -f --tail=30 【容器ID】

    10、容器导出和导入

    #导出docker export [options] container
    docker export -o 路径/debian.tar debian-test
    
    #导入docker import [options] file|URL|- [REPOSITORY[:TAG]]
    docker import 路径/debian.tar debian:v1
    
    • 1
    • 2
    • 3
    • 4
    • 5

    从容器创建一个新的镜像

    docker commit [OPTIONS] CONTAINER [REPOSITORY[:TAG]]
    OPTIONS说明:
    -a :提交的镜像作者;
    -c :使用Dockerfile指令来创建镜像;
    -m :提交时的说明文字;
    -p :在commit时,将容器暂停
    docker commit -m=“has update” -a=“boil” 1d190ed25119 boil/debian:v12

  • 相关阅读:
    C#WPF命令行参数实例
    Processing通过编程实现艺术设计_实现艺术和现实的交互---数据设计分析002
    LintCode 1359: Convert Sorted Array to Binary Search Tree
    秋季开学,培训机构如何做好线下招生?
    OpenHarmony3.0如何轻松连接华为云IoT设备接入平台?
    spring boot 之 整合 knife4j 在线接口文档
    【自然语言处理(NLP)】基于LSTM的命名实体识别
    计算MySQL的QPS和TPS
    Docker入门
    C#串口=>6发送
  • 原文地址:https://blog.csdn.net/fanrongwoaini/article/details/126091913