zoukankan      html  css  js  c++  java
  • Docker命令集合——构建、拉容器、进入容器、容器保存为镜像、删除镜像、启动镜像、保存打开移动镜像、挂载

    Docker

    就是一个环境都搭配好的容器。

    Docker 可以让开发者打包他们的应用以及依赖包到一个轻量级、可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化。容器是完全使用沙箱机制,相互之间不会有任何接口(类似 iPhone 的 app),更重要的是容器性能开销极低。

    Dockfile

    Docker在构建时是依据Dockfile文件来构建的。对于Dockfile文件理解可参考:https://b23.tv/dUvQoZv

    例如,一个简单的Dockerfile文件,如下:以centos的操作系统为基础,执行RUN后面的命令来构建起一个容器,一个软件要安装的东西相关命令都可以下载RUN后面

    FROM centos
    RUN yum install wget
    RUN wget -O redis.tar.gz "http://download.redis.io/releases/redis-5.0.3.tar.gz"
    RUN tar -xvf redis.tar.gz
    以上执行会创建 3 层镜像。可简化为以下格式:
    FROM centos
    RUN yum install wget 
        && wget -O redis.tar.gz "http://download.redis.io/releases/redis-5.0.3.tar.gz" 
        && tar -xvf redis.tar.gz

     有个Dockfile就可以构建镜像了

    docker build 构建镜像

    例如,在有Dockerfile文件的目录下执行下面的命令

    docker build -t mlperf-nvidia:rnn_translator .
    nvidia-docker build . -t mlperf/object_detection

    docker images 查看构建好的镜像

    docker images

    docker run 用镜像拉容器

    runoob@runoob:~$ docker run -it nginx:latest /bin/bash
    nvidia-docker run -v /root/worktable/:/workspace -t -i --rm --ipc=host mlperf/object_detection 

    docker ps 查看已有容器

    docker ps查看当前正在运行的容器,对于已退出的容器,可以使用 docker ps -a 命令进行查看

    docker  exec 进入容器

    通过docker ps第一列,查看容器id,利用id进入容器

     

    启动容器

    docker start 34f79bc43080

    docker commit 容器保存为镜像

     容器都是由镜像生成的,更改了容器里的设置,镜像是不会变的,退出容器,再用镜像拉去一次,容器还是原来的容器,如果想让容器保存,可以commit保存为新的镜像,这也是创建镜像的另一种方式

    docker commit dab179951c78 mlperf/objection:latest

    docker rmi 删除镜像

    其中 -f 为强制删除

    root@runoob:~# docker rmi -f runoob/ubuntu:v4
    Untagged: runoob/ubuntu:v4
    Deleted: sha256:1c06aa18edee44230f93a90a7d88139235de12cd4c089d41eed8419b503072be
    Deleted: sha256:85feb446e89a28d58ee7d80ea5ce367eebb7cec70f0ec18aa4faa874cbd97c73

    docker save 保存镜像为压缩包,docker load 加载镜像

    在对镜像传输的过程中,打包成压缩包的格式,便于传输。xxx.tar 就是打包后的文件,导入其它地方后用docker load < xxx.tar 解包

    docker save ubuntu:load > /root/ubuntu.tar
    docker load < ubuntu.tar
  • 相关阅读:
    JavaScript 深入了解对象中的属性
    JavaScript 开发规范
    vue 项目接口管理
    放大镜特效
    多用户ATM机(面向对象编程)
    浏览器检查块代码
    js中innerHTML与innerText的用法与区别
    symbol访问法及symbor注册表
    最常用的15个前端表单验证JS正则表达式
    数组的遍历
  • 原文地址:https://www.cnblogs.com/caiyishuai/p/14353368.html
Copyright © 2011-2022 走看看