• Docker 常用命令


    简单图解:

     一、docker 镜像

    查看镜像

            docker images  或  docker image ls

    • REPOSITORY:表示镜像的仓库源
    • TAG:镜像的标签
    • IMAGE ID:镜像ID
    • CREATED:镜像创建时间
    • SIZE:镜像大小
    • 补充:镜像名 = REPOSITORY:TAG

    查找镜像

            docker search 镜像名   

    拉去镜像

            docker pull 镜像名

    删除镜像

            docker rmi 镜像ID   //删除镜像前先删除容器

    重命名镜像

            docker tag 镜像ID 新REPOSITORY:TAG

            例如:

                    docker tag 279b8a5ec8d5 18.04/cuda:11.0.3

    更新镜像

            docker commit -m="has update" -a="yuki" 容器ID 新REPOSITORY:TAG

    • -m: 提交的描述信息
    • -a: 指定镜像作者

            例如:

                    docker commit -m="has update" -a="yuki" 279b8a5ec8d5 cuda/test:v1

    保存镜像

            docker save 镜像ID  >  镜像文件.tar

            例如:

                    docker save 75028d2daa90  >  ./image_test/test.tar

                    docker save 75028d2daa90  -o  ./image_test/test.tar

                     docker save  cuda/test:v1  >  ./image_test/test.tar

    镜像加载

            docker load < 镜像文件.tar

            例如:

                    docker load  <  ./image_test/test.tar

                    docker load  -i  ./image_test/test.tar

                    Ps:用镜像ID导出的镜像,导入显示,用镜像名导出即可解决

    镜像上存

            docker push 用户名/镜像名  //要先登录

            例如:

                    docker push yuki_img/test:v1   //利用镜像重命名后上存

    docker容器

    运行容器

            docker run -it 镜像名 /bin/bash

    后台运行容器

            docker run -d 镜像名 执行命令

            docker run -itd 镜像名 /bin/bash

    • -i: 交互式操作
    • -t: 终端
    • -d: 分离模式-在后台运行 
    • -p: 端口映射【宿主机端口:容器端口】、【宿主机端口:容器端口/udp】--默认绑定tcp
    • -v: 目录挂载【宿主机目录:容器目录】
    • /bin/bash: 放在镜像名后的是容器内执行命令,这里希望有个交互式 Shell

            例如:

                    docker run -it 18.04/cuda:11.0.3 /bin/bash

            exit:退出容器

    Ps:如果没使用 -d,当断开/退出 容器会自动停止!

    查看容器

            docker ps -a    //所有容器

            docker ps      //运行中的容器

            docker ps -l    //最近使用的容器

    删除容器

            docker rm -f 容器ID //注意删除容器前先停止容器

    •                         -f:强制删

    停止容器

            docker stop 容器ID

    启动容器

            docker start 容器ID

    重启容器

            docker restart 容器ID

    进入容器

            docker attach 容器ID   //如果从这个容器退出,会导致容器的停止

            docker exec -it 容器ID /bin/bash  //容器退出,容器不会停止【推荐用】

    导出容器

            docker export 容器ID  >  容器快照.tar

            例如:

                    docker export 75028d2daa90 >  ./container_test/test.tar

    导入容器

            cat 容器快照(地址) | docker import - 镜像名

            例如:

                    cat ./container_test/test.tar | docker import - cuda/test:v2

    通过URL导入

            docker import 文件URL  镜像名

            例如:

            docker import  http://example.com/exampleimage.tgz  cuda/test:v3

    数据拷贝

            主机文件 --拷贝--> 容器文件:

                    docker cp ./a.txt 75028d2daa90:/data/a.txt

            容器文件 --拷贝--> 主机文件:

                    docker cp 75028d2daa90:/data/b.txt ./b.txt

  • 相关阅读:
    Pytorch intermediate(二) ResNet
    【8.6】代码源 - 【前缀集】【矩阵游戏】【谁才是最终赢家?】【放置多米诺骨牌】
    【Linux】进程替换|exec系列函数
    Longhorn云原生文件存储
    网络安全(黑客技术)自学笔记
    如何高效的分析online.log
    不使用EF框架实现数据库增删改查
    Leo赠书活动-07期 【嵌入式虚拟化技术与应用】文末送书
    spring监听请求执行结束,移除当前ThreadLocal数据两种方法
    数据结构八种内部排序算法c++实现
  • 原文地址:https://blog.csdn.net/qq_19707521/article/details/127618542