Docker笔记

作者: 处在水深火热的iOS_林龙 | 来源:发表于2018-09-10 10:14 被阅读44次

    Docker镜像

    镜像是一个包含完整的操作系统

    Docker容器

    容器是镜像创建的运行实例,可以启动,停止,删除等操作

    参数 内容
    REPOSITORY: 镜像名称
    TAG: 版本号
    IMAGE ID: 镜像ID
    CREATED: 创建时间
    SIZE: 大小

    镜像的ID 可以相同代表的是同一个镜像
    镜像的TAG 如果不指明默认使用latest标记

    Docker仓库

    仓库是集中镜像的一个场所,仓库分为公开仓库和私有仓库,公开仓库提供大量大镜像给大量用户下载,用户也可以通过push命令上传自己的镜像到公/私有库中。也可以从仓库中pull下来

    仓库    =>  镜像  =>   容器 
    

    容器创建、使用步骤:

    1 docker run -i -t centos /bin/bash 本地判断是有有centos的包,无则下载,有则直接创建
    2.进入到centos系统的docker进行操作
    3.exit进行退出
    4.下次如需要启动之前的容器时不执行 docker run 命令,docker run 命令类似于创建一个系统
    5.docker ps -a 获取容器要启动的容器信息
    6.docker start 容器名/容器id 开启容器服务
    7.docker attach 容器名/容器id 打开容器

    基本命令

    指令 镜像操作 容器操作
    查看本地 docker images docker ps
    运行 docker run -t -i 镜像名/镜像id /bin/bash docker start 容器名/容器id docker attach 容器名/容器id
    删除 docker rmi 镜像名 docker rm 容器名/容器id
    保存tar文件 docker save -o 文件名.tar 镜像 docker export ps容器ID > 文件名.tar
    加载tar文件 docker import 文件名.tar 指定镜像名 docker load 文件名.tar 指定镜像名

    命令总结

    命令 语句
    查询本地镜像 docker images
    镜像下载 docker pull
    镜像上传 docker push
    运行容器 docker run
    保存镜像 docker commit
    保存镜像 docker build
    删除镜像 docker rmi
    创建镜像分支 docker tag
    查询容器信息 docker inspect
    //查询本地有多少镜像
    docker images
    
    //拉取镜像创建容器
    //通过/bin/bash命令启动 运行docker 指定centos系统
    // -t 分配一个伪终端绑定再容器的标准输入上
    // -i 让容器标准输入保持打开
    sudo docker run -t -i centos:latest /bin/bash
    
    //通过容器保存镜像
    //-m版本注释
    //-a解释作者信息
    // bb10e47cf9cf 容器id(可在docker ps -a 查询)
    //最后指定镜像名称
    docker commit -m "add lynx" -a "Docker NewBee" bb10e47cf9cf newcentos/new
    
    //通过配置文件创建一个新的镜像   
    // -t 绑定镜像名:标签  . 表示当前路径
    vi Dockerfile 
      FROM centos:latest    // FROM表示从什么镜像的基础上创建    
      MAINTAINER Docker newUser <250038728@qq.com>  // MAINTAINER 创建者信息     
      RUN yum install lynx   // RUN shell命令
    docker build -t "outuser/sin:v2" .
    
    //=============================  保存/读取   ===============================
    //通过镜像 保存在本地(tar)
    docker save -o 文件.tar outuser/sin:v3
    
    //导入本地镜像文件(tar)
    cat ubuntu.tar.gz | docker import - ubuntu:latest
    
    
    //通过容器 保存在本地(tar)
    docker export   ps进程名ID > 文件名.tar
    
    //加载本地文件
    docker load --input  文件名.tar
    //===============================  上传   ==================================
    //镜像上传
    docker push    outuser/sin:v3  
    
    //===============================  修改   ==================================
    //删除镜像(rmi 是删除镜像  rm是删除容器)
    docker rmi outuser/sin:v3
    
    //删除容器  名/id
    docker rm 容器名
    
    // 原有的镜像id  新镜像名:tag名
    docker stop ps进程名
    docker restart ps进程名
    docker start ps进程名
    docker attach ps进程名   //运行容器
    
    //查看该容器的打印日志
    docker logs  ps容器名/id
    
    //=============================  绑定容器外的数据   ===============================
    // -v标识表示的是绑定数据卷,  本地路径:docker路径 
    docker run -i -t  -v /root/aPath:/root/data   centos
    
    //数据容器
    docker run  -v /root/data --name dbdata -t -i -d centos /bin/bash     //创建数据容器
    docker run -t -i -t   --name db1 --volumes-from dbdata  centos /bin/bash  //绑定数据容器
    
    //=============================  绑定端口号   ===============================
    //指定端口号  -p可以多次使用(可以绑定多个端口)
    docker run -p 8000:8000 -t -i --name bindPort centos  /bin/bash
    
    //随机端口号(随机是用大写的P)
    docker run -P -t -i  --name bindPort  centos  /bin/bash
    
    //查询绑定端口号
    docker port 容器名/id
    
    //docker -link
    
    

    57 - 69

    相关文章

      网友评论

        本文标题:Docker笔记

        本文链接:https://www.haomeiwen.com/subject/vgrcgftx.html