• docker


    ------------恢复内容开始------------

      

    一、Docker理论

    Docker主要目标:Build,ship andRun Any App,Anywhere  通过对应用组件的封装、分发、部署、运行等生命周期的管理,使用户的应用程序及其运行环境能够做到“一次封装,到处运行”。  

        有些情况下,开发交付代码、war包时给运维之间有可能会产生部署错误,原因主要是因为,一款产品:操作系统,运行环境,再到应用配置。开发+运维,之后的各种版本迭代,不同版本环境的兼容

        软件带环境安装,安装的时候,把原始环境一模一样地复制过来,开发人员利用Docker可以消除协作编码时“在我的机器上可正常工作的问题”,从搬家====搬楼,通过镜像将作业系统核心除外,运作应用程序所需要的系统环境,由下而上打包,达到应用程序跨平台间的无缝接轨运作。

      1、docker是什么:GO语言、docker的三要素:仓库镜像容器

        一句话:解决了运行环境和配置问题软件容器,方便做持续集成并有助于整体发布的容器虚拟化技术

        镜像: 就是一个只读的模板。镜像可以用来创建Docker容器,一个镜像可以创建很多容器,类似于java中的一个类

        容器:利用容器独立运行的一个或一组应用,容器是用镜像创建的运行实例,容器类似一个简易版的linux环境

        仓库:集中存放镜像文件的场所,类似github,国内基本使用阿里云,网易云

        理解:

           Docker本身是一个容器运行载体或称之为管理引擎,我们把应用程序和配置依赖打包好形成一个可交付的环境,这个环境就是Image镜像,通过镜像才能生成docker容器,Image文件可看左是容器的模板,Docker根据Image文件生成容器实例。同一个Image文件,可生成多个同时运行的容器实例

        Image:文件生成的容器实例,本身也是一个文件,称为镜像文件

        一个容器运行一种服务,当我们需要时,可通过docker客户端创建一个对应的运行实例,就是我们的容器

        仓库,就是存放一堆镜像的地方,我们把镜像发布到仓储中,需要的时候从仓储中拉下来就行

        

      2、docker能干嘛:

        虚拟机的缺点:资源占用多、冗余步骤多、启动慢

        docker:一次构建、随处运行。更快速的应用交付和部署、更便捷的升级和扩缩容、更简单的系统运维、更高效的计算资源利用。仅包含业务运行所需的runtime环境,只要软件,不需要linux的硬件 

    二、docker命令

      1、镜像命令:

       查看镜像

        docker images:查看本机所有的镜像

        docker images  -a :列出本地所有镜像

        docker images  -q : 只显示镜像ID

        docker images --digests:显示镜像摘要信息

        docker images --no-trunc:显示完整的镜像信息

       查找镜像:通过dockerhub查找

        docker search “镜像名称” 

        docker search  -s  数字(点赞数超过当前数字的)   "镜像名称”

       下载镜像:从自己配置的阿里云下载

        docker pull  "镜像名称" : latest (版本号) 没写版本号最新的

       删除镜像

        docker rmi  -f  “镜像名称” : latest(版本号),没写默认为最新版本

        docker rmi  -f  "镜像名称1"  “镜像名称2”    :  批量删除

        docker rmi  -f  $(docker images -qa)   : 全部删除

      2、容器命令:

        只有镜像才能够创建容器,这是根本前提

        docker pull centos:下载镜像演示,docker的核心,仅使用docker中程序运行环境,不需要硬件设施。正常情况下centos要4G空间,容器虚拟化技术,centos仅有200M左右。

       新建并启动容器

        i:以交互模式运行容器

        t:为容器分配一个伪输入终端

        docker  run  -it  --name  “镜像别名”  镜像名称/镜像images ID  : 依照某个镜像,去创建容器  ,执行后,进入到对了对应容器中伪终端的根目录

        docker  run -d  “容器名”  :启动守护进程,没有进交互界面,此启动后,在docker ps 时发现并没有容器运行,Docker的容器后台运行,就必须有一个前台进程,将要运行的程序以前台进程的形式运行

       列出当前所有运行的容器

        docker ps   

          -l:上一此运行的容器、 -a  当前+过往、  -n 3 上3个容器列表、  -q:静默模式,只显示容器编号

       退出容器

        exit :关闭容器后退出

        ctrl+P+Q:退出,不关闭

       启动容器:

        docker start 容器ID

        docker  restart  容器ID

       停止容器:

        docker stop  容器ID,慢慢熄火

        docker  kill  容器ID ,直接关电源

       查看容器日志:

        docker logs  -f  -t  --tail  容器ID   :  f:最新的日志打印, t:时间戳,tail:显示最i后多少条

        

  • 相关阅读:
    centos7安装Oracle12c
    Spring框架学习总结(上)
    如何教会女友递归算法?
    别翻了,这篇文章就是要让你入门java多线程!
    【从今天开始好好学数据结构04】程序员你心中就没点“树”吗?
    【从今天开始好好学数据结构03】链表
    【从今天开始好好学数据结构02】栈与队列
    别翻了,这篇文章绝对让你深刻理解java类的加载以及ClassLoader源码分析【JVM篇二】
    深入理解java继承从“我爸是李刚”讲起
    深入理解java多态没有烤山药的存在,java就不香了吗?
  • 原文地址:https://www.cnblogs.com/guanyuehao0107/p/12052100.html
Copyright © 2020-2023  润新知