范文健康探索娱乐情感热点
投稿投诉
热点动态
科技财经
情感日志
励志美文
娱乐时尚
游戏搞笑
探索旅游
历史星座
健康养生
美丽育儿
范文作文
教案论文
国学影视

新手如何理解并入门docker?

  接下来通过4方面来初步了解docker docker介绍 docker架构 docker镜像操作 docker容器操作 一、docker介绍
  容器技术
  计算机的世界中, 容器拥有一段漫长且传奇的历史 。容器与管理程序虚拟化
  (hypervisor virtualization,HV)有所不同,管理程序虚拟化通过中间层将一台或者多台独立的机器虚拟运行与物理硬件之上,而容器则是直接运行在操作系统内核之上的用户空间。 因此,容器虚拟化也被称为"操作系统级虚拟化",容器技术可以让多个独立的用户空间运行在同一台宿主机上
  由于"客居"于操作系统, 容器只能运行与底层宿主机相同或者相似的操作系统 ,这看起来并不是非常灵活。例如:可以在Ubuntu服务中运行Redhat Enterprise Linux,但无法再Ubuntu服务器上运行Microsoft Windows。
  相对于彻底隔离的管理程序虚拟化,容器被认为是不安全的。而反对这一观点的人则认为,由于虚拟容器所虚拟的是一个完整的操作系统,这无疑增大了攻击范围,而且 还要考虑管理程序层潜在的暴露风险。
  尽管有诸多局限性,容器还是被广泛部署于各种各样的应用场合。 在超大规模的多租户服务部署、轻量级沙盒以及对安全要求不太高的隔离环境中,容器技术非常流行。最常见的一个例子就是"权限隔离监牢"(chroot jail),它创建一个隔离的目录环境来运行进程。如果权限隔离监牢正在运行的进程被入侵者攻破,入侵者便会发现自己"身陷囹圄",
  因为权限不足被困在容器所创建的目录中,无法对宿主机进一步破坏。
  最新的容器技术引入了OpenVZ、Solaris Zones以及Linux容器(LXC)。使用这些新技术,容器不在仅仅是一个单纯的运行环境。 在自己的权限类内,容器更像是一个完整的宿主机 。容器和宿主机之间的隔离更加彻底,容器有独立的网络和存储栈,还拥有自己 的资源管理能力,使得同一台宿主机中的多个容器可以友好的共存。
  容器被认为是精益技术,因为容器需要的开销有限。和传统虚拟化以及半虚拟化相比, 容器不需要模拟层(emulation layer)和管理层(hypervisor layer) ,而是使用操作系统的系统调用接口。这降低了运行单个容器所需的开销,也使得宿主机中可以运行更多的容器。
  尽管有着光辉的历史,容器仍未得到广泛的认可。一个很重要的原因就是容器技术的复杂性: 容器本身就比较复杂,不易安装,管理和自动化也很困难。而Docker就是为了改变这一切而生的。
  Docker是一个开发,运输和运行应用程序的开放平台。  Docker使您可以将应用程序与基础架构分离,以便快速交付软件。 使用Docker,您可以像管理应用程序一样管理基础架构(OS)。 通过利用Docker的方法快速发送,测试和部署代码,您可以显着减少编写代码和在生产中运行代码之间的延迟。(代码改了) docker好处
  容器提供了隔离性,结论是,容器可以为各种测试提供很好的沙盒环境。并且,容器本身就具有"标准性"的特征,非常适合为服务创建构建块。
  Docker的一些应用场景如下: 加速本地开发和构建流程,使其更加高效、更加轻量化。本地开发人员可以构建、运行并分享Docker容器。容器可以在开发环境中构建,然后轻松的提交到测试环境中,并最终进入生产环境。 开发人员与运维人员进行职责的逻辑分离 能够让独立的服务或应用程序在不同的环境中,得到相同的运行结果。这一点在面向服务的架构和重度依赖微型服务的部署由其实用。 用Docker创建隔离的环境来进行测试。例如,用Jenkins CI这样的持续集成工具启动一个用于测试的容器。(持续化集成 war 实际部署:jenkins持续化集成 Jenkins + git ) Docker可以让开发者先在本机上构建一个复杂的程序或架构来进行测试,而不是一开始就在生产环境部署、测试。 构建一个多用户的平台即服务( PaaS )基础设施为开发、测试提供一个轻量级的独立的沙盒环境 提供软件即服务(SaaS)应用程序,例如Memcached即服务 高性能、超大规模的宿主机部署(可以很多容器)
  沙盒:在计算机安全领域,沙盒(英语:sandbox,又译为沙箱)是一种安全机制,为运行中的程序提供的隔离环境。通常是作为一些来源不可信、具破坏力或无法判定程序意图的程序提供实验之用。 集装箱思想
  Docker借鉴了标准集装箱的概念。标准集装箱将货物运往世界各地,Dock将这个模型运用到自己的设计中,唯一不同的是:集装箱运输货物,而Docker运输软件、应用程序。
  和集装箱一样,Docker在执行上述操作时,并不关心容器中到底装了什么,它不管是web服务器,还是数据库,或者是应用程序服务器什么的。所有的容器都按照相同的方式将内容"装载"进去。
  Docker也不关心你要把容器运到何方:我们可以在自己的笔记本中构建容器,上传到 Registry,然后下载到一个物理的或者虚拟的服务器来测试,在把容器部署到具体的主机中。像标准集装箱一样,Docker容器方便替换,可以叠加,易于分发,并且尽量通用。 container与vm区别
  物理机:
  虚拟机:
  容器:最大化的利用资源。
  通过上面这三张抽象图,我们大概可以通过类比概括出: 容器虚拟化的是操作系统而不是硬件,容器之间是共享同一套操作系统资源的。 虚拟机技术是虚拟出一套硬件后,在其上运行一个完整操作系统。
  容器和虚拟机具有相似的资源隔离和分配优势,但功能有所不同, 因为容器虚拟化的是操作系统,而不是硬件,因此容器更容易移植,效率也更高。
  容器在Linux上本机运行,并与其他容器共享主机的内核。 它运行一个独立的进程,不占用任何其他可执行文件的内存,使其轻量级。相比之下,虚拟机(VM)运行一个完整的"客户"操作系统,通过虚拟机管理程序对主机资源进行虚拟访问。通常,VM提供的环境比大多数应用程序需要的资源更多。 虚拟机vs容器
  容器是一个应用层抽象,用于将代码和依赖资源打包在一起。多个容器可以在同一台机器上运行,共享操作系统内核,但各自作为独立的进程在用户空间中运行。与虚拟机相比,容器占用的空间较少(容器镜像大小通常只有几十兆),瞬间就能完成启动。
  虚拟机(VM)是一个物理硬件层抽象,用于将一台服务器变成多台服务器。管理程序允许多个VM在一台机器上运行。每个VM都包含一整套操作系统、一个或多个应用、必要的二进制文件和库资源,因此占用大量空间。而且VM启动也十分缓慢。 二、docker架构
  Docker uses a client-server arch itecture.The Docker  client  talks to the Docker  daemon , which does the heavy lifting of building,running,and distributing your Docker containers. The Docker clientanddaemon  can  run on the same system, or you can connect a Docker client to a remote Docker daemon. The Docker client and daemon communicate using a REST API,over UNIX sockets or a network interface.(Docker使用客户端-服务器架构。Docker客户端与Docker守护进程通信,后者负责构建,运行和分发Docker容器。Docker客户端和守护程序可以在同一系统上运行,也可以将Docker客户端连接到远程Docker守护程序。Docker客户端和守护程序使用RESTAPI,通过UNIX套接字或网络接口进行通信。)
  Docker守护程序(dockerd)侦听DockerAPI请求并管理Docker对象,如图像,容器,网络和卷。守护程序还可以与其他守护程序通信以管理Docker服务。)
  Docker客户端(docker)是许多Docker用户与Docker交互的主要方式。当您使用诸如 dockerrun之类的命令时,客户端会将这些命令发送到dockerd,后者将其执行。 docker命令使用DockerAPI。Docker客户端可以与多个守护进程通信。
  Docker注册表存储Docker镜像。
  DockerHub是任何人都可以使用的公共注册中心,Docker配置为默认在DockerHub上查找图像。您甚至可以运行自己的私人注册表。如果您使用Docker Datacenter(DDC),它包括DockerTrustedRegistry(DTR)。使用dockerpull或 dockerrun命令时,将从配置的注册表中提取所需的映像。使用dockerpush命令时,图像将被推送到配置的注册表。) 三、docker镜像操作
  Docker镜像是容器的基础。镜像是一个有序集合,其中包含根文件系统更改和在容器运行时中使用的相应执行参数。镜像通常包含堆叠在彼此之上的联合分层文件系统。镜像没有状态并且始终不会发生更改。当运行容器时,使用的镜像如果在本地中不存在, docker就会自动从docker镜像仓库中下载,默认是从 DockerHub 公共镜像源下载。 列出镜像docker images REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE hello‐world         latest              fce289e99eb9        5 months ago         1.84kB 这些镜像都是存储在Docker宿主机的/var/lib/docker目录下。REPOSITORY :表示镜像的仓库源 TAG :镜像的标签(版本),同一仓库源可以有多个TAG,代表这个仓库源的不同个版本,如ubuntu仓库源里,有15.10、14.04等多个不同的版本。 IMAGEID :镜像ID CREATED :镜像创建时间 SIZE :镜像大小
  查找镜像  docker search 镜像名称 NAME                               DESCRIPTION                                      STARS               OFFICIAL            AUTOMATED centos                             The official build of CentOS.                    5391                [OK]                 ansible/centos7‐ansible            Ansible on Centos7                               121                                     [OK] jdeathe/centos‐ssh                 CentOS‐6 6.10 x86_64 / CentOS‐7  7.5.1804 x86…   110                                     [OK] consol/centos‐xfce‐vnc             Centos container with "headless" VNC  session…   91                                      [OK] imagine10255/centos6‐lnmp‐php56    centos6‐lnmp‐php56                               56                                      [OK] centos/mysql‐57‐centos7            MySQL 5.7 SQL database server                    53                                       tutum/centos                       Simple CentOS docker image with SSH  access      44                                       centos/postgresql‐96‐centos7       PostgreSQL is an advanced Object‐ Relational …   37                                       kinogmt/centos‐ssh                 CentOS with SSH                                  26                                      [OK] pivotaldata/centos‐gpdb‐dev        CentOS image for GPDB development. Tag names…    10                                       drecom/centos‐ruby                 centos ruby                                      6                                       [OK] mamohr/centos‐java                 Oracle Java 8 Docker image based on  Centos 7    3                                       [OK] darksheer/centos                   Base Centos Image ‐‐ Updated hourly              3                                       [OK] pivotaldata/centos                 Base centos, freshened up a little  with a Do…   3                                        miko2u/centos6                     CentOS6 日本語環境                                    2                                       [OK] pivotaldata/centos‐mingw           Using the mingw toolchain to cross‐ compile t…   2                                        ovirtguestagent/centos7‐atomic     The oVirt Guest Agent for Centos 7  Atomic Ho…   2                                        indigo/centos‐maven                Vanilla CentOS 7 with Oracle Java  Developmen…   1                                       [OK]  mcnaughton/centos‐base             centos base image            1                                       [OK] blacklabelops/centos               CentOS Base Image! Built and Updates  Daily!     1                                       [OK] pivotaldata/centos‐gcc‐toolchain   CentOS with a toolchain, but  unaffiliated wi…   1                                        pivotaldata/centos7‐dev            CentosOS 7 image for GPDB development            0                                        smartentry/centos                  centos with smartentry                           0                                       [OK] fortinj66/centos7‐s2i‐nodejs       based off of ryanj/centos7‐s2i‐nodejs.  Bigg…    0                                        pivotaldata/centos6.8‐dev          CentosOS 6.8 image for GPDB  development         0                                       拉取镜像
  docker pull 镜像名称[:version]
  Docker镜像首页,包括官方镜像和其它公开镜像。DockerHub上最受欢迎的10大镜像
  (通过DockerregistryAPI获取不了镜像被pull的个数,只能通过镜像的stars数量,来衡量镜像的流行度。毫无疑问,拥有最高stars数量的库都是官方库。国情的原因,国内下DockerHUB官方的相关镜像比较慢,可以使用国内(docker.io)的一些镜像加速器,镜像保持和官方一致,关键是速度块,推荐使用。配置镜像加速器:  PS:配置镜像加速器(参考该网站具体的文档操作) ‐ 阿里云(先加入阿里云开发者平台:https://dev.aliyun.com) ‐ docker中国加速器(https://www.docker‐cn.com) ‐ USTC加速器(https://lug.ustc.edu.cn/wiki/ )  真正的公共服务(无需任何操作) ‐ daocloud、网易蜂巢加速器:略  步骤: sudo vim /etc/docker/daemon.json     配置内容:     {         "registry‐mirrors": ["https://cs913o6k.mirror.aliyuncs.com"]    } sudo systemctl daemon‐reload sudo systemctl restart docker  删除镜像 1、删除一个镜像 docker rmi 镜像名称/id  2、删除多个镜像 docker rmi 镜像名称1/id1 镜像名称2/id2 ...  3、删除所有镜像 docker rmi `docker images ‐q`  四、docker容器操作
  容器是 docker镜像的运行时实例。
  创建容器  docker run [options] image command [ARG...]options选项: ‐i、‐t、‐d、‐‐name ‐i:交互式容器 ‐t:tty,终端 ‐d:后台运行,并且打印容器id  sh /usr/local/tomcat7/bin/startup.sh(shell脚本  #/bin/bash  py  rb  lua) Linux:根的进程:/bin/bash  tree                 /xxx                     /yyy   eg:创建的容器名称不能重复 docker run ‐‐name=u1 ubuntu docker run ‐i ‐t ‐‐name=u1 ubuntu /bin/bash docker run ‐i ‐t ‐d ‐‐name=u3 ubuntu /bin/bash
  进入容器 方式一: docker attach 容器名称/id               (ps:exit,容器停止) eg:docker attach u3  方式二: docker exec ‐it 容器名称/id /bin/bash    (ps:exit,容器不会停止) eg:docker exec ‐it u3 /bin/bash
  查看容器 docker ps:查看正在运行的容器 docker ps -a:查看运行过的容器(历史) docker ps -l:最后一次运行的容器
  停止/启动容器 docker start 容器名称/id docker stop 容器名称/id
  获取容器/镜像的元数据 查看容器/镜像全部信息: docker inspect 容器/镜像  查看容器/镜像部分信息: docker inspect ‐f="{{.NetworkSettings.IPAddress}}" 容器/镜像‐f:可通过‐‐format代替
  删除容器 删除一个容器: docker rm 容器名称/id  删除多个容器: docker rm 容器名称1/id1 容器名称2/id2 ...  删除所有容器 docker rm `docker ps ‐a ‐q`  PS:无法删除正在运行的容器
  查看容器日志  docker logs 容器名称/id
  文件拷贝
  如果我们需要将文件拷贝到容器内可以使用cp命令 docker cp 需要拷贝的文件或目录 容器名称:容器目录  例如:docker cp 1.txt c2:/root
  也可以将文件从容器内拷贝出来 docker cp 容器名称:容器目录 需要拷贝的文件或目录  例如:docker cp c2:/root/2.txt /root
  目录挂载
  我们可以在创建容器的时候,将宿主机的目录与容器内的目录进行映射,这样我们就可
  以通过修改宿主机某个目录的文件从而去影响容器。
  创建容器添加-v参数 后边为 宿主机目录:容器目录 docker run ‐id ‐‐name=c4 ‐v /opt/:/usr/local/myhtml centos
  如果你共享的是多级的目录,可能会出现权限不足的提示
  这是因为CentOS7中的安全模块selinux把权限禁掉了,我们需要添加参数--
  privileged=true来解决挂载的目录没有权限的问题  docker run ‐id ‐‐privileged=true ‐‐name=c4 ‐v /opt/:/usr/local/myhtml centos
  更多详细内容深入解析docker容器化技术_Java进阶教程

全球领先!江西首富成世界锂王,手握18项锂资源文文学科技社众所周知,作为目前全球顶尖的新能源汽车企业,特斯拉无论是在股价还是在科研实力方面都十分出色。从这一点也能够看出来,新能源汽车的规模不断扩大,很有可能在未来替代传统汽车成提高认知,看见更大的世界!人和人最根本的差异来源于认知的差异,你的一生都在为自己的认知买单,你看到的世界,仅仅是认知的边界!生活中在认知范围内赚钱,认知范围外靠运气赚到的钱都会因为无知凭实力亏掉!认知的丰富内训蝶变年度优秀内训师巡礼第二期蝶变成长共生2022年度优秀内训师科技创新方向第二期他们,围绕云改数转战略,深耕成长他们,赋能转型队伍成长,倾囊相授让我们一起来看看他们的蝶变风采!云计算技术方向余勇志网信安方向钟那些看到就想要抄下来的句子(一百七十六)我是一个女孩子,需要被保护被偏爱的感觉,但是你有委屈了可以放心大方地和我说,有烦恼想喝酒了,我会陪着你喝,你醉了陪你说话扛你回家的一定会是我,我随时是你的依靠,我也不想让我的男孩子平安夜,愿我最爱的人,一生幸福平安头条创作挑战赛时间过得真快,转眼之间又是一年,一份深情,一份牵挂,在这一年中,我又写下了对你太多的思念。平安夜,愿我最爱的人,一生幸福平安,一份最美的祝福,永远只送给你,愿你在远方愿所爱之人平安健康文执笔学渣2022年的十二月,是我们三年疫情结束的月份,也是一切都准备重启的时刻。大概也是我们最难熬的时刻这几天,大街上普遍都没多少人,就像网上说的那样一部分人在家渡劫,一部分在伺力出一孔利出一孔,结成了利益共同体甚至是生命共同体在头条看见彼此华为的追求是成为世界级领先企业并通过无依市场压力传递,使内部机制永远处于激活状态。任正非经历过大饥荒年代,有痛彻心扉的少年创伤记忆,对物居和精神的饥饿有刻骨铭心的体验大宗商品寒冬将至?看涨情绪消散,市场人士牛市难再现近期,大宗商品整体偏弱,波动性位于高位,看涨情绪有所消散,文华商品指数振荡走低。当前,大宗商品市场处于国内弱现实强预期,国际强现实弱预期的博弈中,加之中美货币政策背离,市场整体情绪牙龈炎发作痛苦难忍?提醒想要预防它反复发作,日常需做好4点牙龈炎指的是一种由牙菌斑所引起的牙龈非特异性炎症,一旦患病,患者在刷牙或者是咬一些坚硬食物的时候,就会出现明显的牙龈出血现象。患者的牙龈也会呈现鲜红色或者是暗红色,如果情况严重的话2022年,中国人把钱花在哪了?题图视觉中国今年,90后蔡柔参加了一个特殊的生日party她家猫咪一岁的生日派对,而蔡柔准备的生日礼物是一台宠物跑步机。随着猫狗双全成为年轻人对幸福生活的新定义,围绕人宠共处的消费她用生命作代价在水深火热中保护支离破碎的家庭回忆篇三时代终将会过去,运动总有一天会结束。然而他带给一个人的伤害却是一辈子,带给一个家庭的苦难却是无穷无尽,这种伤害和苦难甚至会世代传承。一场文化运动,断送了一位人民的好干部的美好前程与
11球9助!2。2亿巨星踢嗨了,与梅西珠联璧合领跑双榜,姆总不悦法甲第8轮的焦点大战中,大巴黎客场依靠梅西的打进的全场唯一进球,10击败了老牌劲旅里昂,收获了联赛6连胜再次反超马赛成为法甲领头羊。本场比赛的最佳当属梅西,他除了打进1球外,还任意中超4消息!国青虽败犹荣,海港豪阵将迎首秀,申花恢复元气第1个消息来自于U19国青。在凌晨进行的U20亚洲杯预选赛最后一轮中,中国U19国青队以01的比分不敌沙特队,获得小组第二,虽然没有拿到小组第1,但是也凭借着6个净胜球的优势以5个中超4消息!李玮锋立规矩,深足新教练加盟,大连人多人遭降薪第1个消息来自于李玮锋。李玮锋上任广州城主帅之后,给球队带来了脱胎换骨的变化,并且拿到两连胜。据足球报报道,球队之所以能够面貌焕然一新,与李玮锋给球队制定的新要求和新规矩有很大关系悬念揭晓,单场63超级外援谢幕,阿的江神助攻广东宏远夺冠随着新赛季即将到来,一些球迷熟悉的CBA外援,纷纷面临无球可打,其中就包括哈德森西蒙斯威尔斯等人。而有一位外援,最令人出乎意料,他就是亚当斯,这位单场63的超级外援,正式宣布在CB齐达内眼光真毒3年前1个决定,培养出巨星!皇马受益至今西甲第6轮,皇马客场21击败马竞,收获西甲6连胜各项赛事9连胜的梦幻开局。24岁的费德巴尔韦德再次建功,8天之内的3场比赛,乌拉圭全能战士场场破门,创造皇马生涯的新纪录!踢右边锋的6场0分钟,巴萨巨星抱怨!哈维当众放狠话,丝毫不留情面202223赛季的巴萨,哈维大胆改革,年轻人挑起大梁。35岁的皮克沦为铁板凳总共8场比赛,皮克6场枯坐板凳。9月19日的每日体育报透露巴萨更衣室一段小插曲,皮克和巴萨主帅哈维之间,掩面痛哭!最后1战?这一波,是NBA输了西班牙8876击败法国,夺得欧锦赛冠军。没有保罗加索尔,没有马克加索尔,西班牙依旧是欧洲老大啊。赛前没有人看好西班牙能闯进决赛,更别说夺冠。赛前战力预测排名,西班牙只排在第7(前4大连队功勋已跟谢晖摊牌,拒绝主动服软妥协,就等着被驱逐出队大连队主帅谢晖这段时间的心情肯定很郁闷,因为本土四大王牌吴伟童磊林良铭单欢欢同时发难,拒绝跟球队签订续约合同。大连队面对四位刺头球员的出格行为,也是直接毫不留情面,对童磊吴伟林良铭又成老赖?苏宁的负债闹剧究竟何时结束?前几天,一则苏宁再度被列为失信被执行人的新闻再度登上热搜,苏宁成为老赖苏宁可能会破产的消息再度甚嚣尘上。但其实大家都清楚,苏宁的问题已经不是一朝一夕了。去年初,苏宁陷入债务危机张近毛泽东思想是不落的太阳写在九一八友1给我推送有关谷爱凌的一个链接,大意就是夸谷爱凌的优秀是如何练就的。我并不那么关注谷爱凌,我只是知道有她的存在罢了,如果没人在我面前提她,我可能很快就彻底忘了她,因为我和她没有任印太经济框架首轮会谈刚结束,印度就宣布退群,原因和中国有关?和特朗普相比,拜登在反华立场上有过之而无不及。为了拉拢亚洲国家围堵中国,美方组建印太经济框架(IPEF),这是美国2017年退出跨太平洋伙伴协定(TPP)后,为加强与印太国家经贸关