容器技术

3.docker容器的常用命令

落爺英雄遲暮 提交于 2020-01-06 17:06:56
1.docker的主要内容 (1).docker是一个cs架构 (2).docker主要:镜像 容器 仓库 网络 存储 监控 (3).docker是一个软件的打包技术 2.docker镜像基础命令 1.docker search Nginx(搜索镜像) [root@docker03 ~]# docker search nginx NAME DESCRIPTION STARS OFFICIAL AUTOMATED nginx Official build of Nginx. 12314 [OK] jwilder/nginx-proxy Automated Nginx reverse proxy for docker con… 1698 [OK] richarvey/nginx-php-fpm Container running Nginx + PHP-FPM capable of… 746 [OK] linuxserver/nginx An Nginx container, brought to you by LinuxS… 83 2.docker pull nginx (官网仓库下载镜像,不加latest,默认下载最新版) [root@docker03 ~]# docker pull nginx Using default tag: latest latest: Pulling

在docker中用Tomcat运行web项目

我的梦境 提交于 2020-01-05 00:38:39
本文旨在用最通俗的语言讲述最枯燥的基本知识 上一篇文章《为什么要用docker》已经讲述了什么是docker以及我们要用docker的原因,并且讲解了如何安装docker。这时候很多读者磨拳擦脚跃跃欲试但却发现安装好docker之后就无从下手了,那么,接下来,小编会从以下方面讲述docker的一些基础知识,当然,理论都是生硬的,所以小编选取了javaweb项目中最常用的一个软件--tomcat的安装和使用来引导学习一些docker相关的知识,借此让读者能够从实战的角度去理解docker为什么会有这些基础知识以及如何使用这些基础知识。 我们知道,web开发和部署离不开tomcat,而在目前的实际情况是: 一个项目中,每个开发者本机电脑都有自己的tomcat或者用idea的内置tomcat,当我们开发完成提交测试时,测试服务器上也有一个tomcat;当项目上线时,线上服务器也有一个tomcat,因此就很容易出现一些奇奇怪怪的问题,比如在同事A电脑上能正常运行的,到同事B电脑上就出问题的;或者是在测试环境里一切正常,到了线上bug一堆。这时候docker就有了用武之地,项目负责人把docker的tomcat镜像做好了之后上传到镜像仓库,项目成员的电脑环境、测试环境、线上环境均拉取这个tomcat使用,就能保持在所有的环境下tomcat的版本、设置都是一致的,避免了一些非技术的问题。 那么

K8s(Kubernetes)的安装部署

末鹿安然 提交于 2020-01-04 23:51:55
一. Kubernetes 系统简介 首先,他是一个全新的基于容器技术的分布式架构领先方案。Kubernetes(k8s)是Google开源的容器集群管理系统(内部:Borg)。在Docker技术的基础上,为容器化的应用提供部署运行、资源调度、服务发现和动态伸缩等一系列完整功能,提高了大规模容器集群管理的便捷性。   Kubernetes是一个完备的分布式系统支撑平台,具有完备的集群管理能力,多扩多层次的安全防护和准入机制、多租户应用支撑能力、透明的服务注册和发现机制、內建智能负载均衡器、强大的故障发现和自我修复能力、服务滚动升级和在线扩容能力、可扩展的资源自动调度机制以及多粒度的资源配额管理能力。同时Kubernetes提供完善的管理工具,涵盖了包括开发、部署测试、运维监控在内的各个环节。 Kubernetes中,Service是分布式集群架构的核心,一个Service对象拥有如下关键特征: 拥有一个唯一指定的名字 拥有一个虚拟IP(Cluster IP、Service IP、或VIP)和端口号 能够体统某种远程服务能力 被映射到了提供这种服务能力的一组容器应用上 Service的服务进程目前都是基于Socket通信方式对外提供服务,比如Redis、Memcache、MySQL、Web Server,或者是实现了某个具体业务的一个特定的TCP Server进程

Docker 底层实现

寵の児 提交于 2020-01-04 19:32:14
Docker底层实现(一些底层原理) Docker底层的核心技术包括Linux上的命名空间(Namespace)、控制组(Control groups)、Union文件系统(Union file systems)和容器格式(Container format)。 传统的虚拟机通过在宿主主机中运行hypervisor来模拟一整套完整的硬件环境系统提供给虚拟机的操作系统。虚拟机系统看到的环境是可限制的,也是彼此隔离的。这种直接的做法实现了对资源的完整封装,但很多时候往往意味着系统资源的浪费。例如,Linux上运行Linux虚拟机,虚拟机中运行的应用其实可以利用宿主机系统中的运行环境。 可以通过Linux的命名空间实现大家虽然都共用一个内核和某些运行时环境(例如一些系统命名和系统库),但是彼此却看不到,都以为系统中只有自己的存在。这种机制就是容器(Container),利用Namespace来做权限的隔离控制,利用cgroups来做资源分配。 基本架构 Docker采用了C/S架构,包括客户端和服务端。Docker守护进程(Daemon)作为服务端接收来自客户端的请求,并处理这些请求(创建、运行、分发容器)。 客户端和服务端既可以运行在一个机器上,也可以通过socket或者RESTful API来进行通信。 Docker守护进程一般在宿主主机后台运行,等待接收客户端的消息

docker存储

回眸只為那壹抹淺笑 提交于 2020-01-03 21:25:44
现在是数据的时代,数据的重要性不言而喻,因此在使用docker的过程中,如何存储其产生的数据就是docker的重中之中,现在我们就一起来看看docker是怎么存储数据的。 数据卷及挂载 volume(数据卷): 其由docker自身创建与管理,用于docker数据的持久化与容器间数据共享。 Bind mounts(挂载): 使用-v或–mount进行引用宿主机上已经存在的目录或文件,用于docker数据的持久化与容器间数据共享。 tmpfs mounts(tmpfs挂载): 用于存储程序运行中产生的临时数据,数据保存在主机内存中。 Linux系统下专用 优缺点 volume 1、管理更方便,可以使用docker的CLI与API进行管理 2、不需要docker主机必须具有给定的目录或文件结构 3、迁移更加方便 3、数据卷可以存储在远程主机或云上 4、swarm下共享数据更加方便 bind mounts 1、只需要挂载文件时,更加方便 2、当确保Docker主机的文件或目录结构与容器所需的绑定挂载一致时。 tmpfs mounts 1、存储敏感临时数据 2、容器停止,tmpfs挂载被删除 存储驱动 容器和镜像 介绍驱动之前,我们先介绍以下docker的容器与镜像。 镜像: 由一层层的只读的文件系统(镜像)组成,在Dockerfile中,每一个RUN命令都会创建一层镜像

kubeadm实现的高可用

本小妞迷上赌 提交于 2020-01-02 23:48:23
安装部署k8s_v1.11 K8s简介 1.背景介绍   云计算飞速发展     - IaaS     - PaaS     - SaaS   Docker技术突飞猛进     - 一次构建,到处运行     - 容器的快速轻量     - 完整的生态环境 2.什么是kubernetes   首先,他是一个全新的基于容器技术的分布式架构领先方案。Kubernetes(k8s)是Google开源的容器集群管理系统(谷歌内部:Borg)。在Docker技术的基础上,为容器化的应用提供部署运行、资源调度、服务发现和动态伸缩等一系列完整功能,提高了大规模容器集群管理的便捷性。   Kubernetes是一个完备的分布式系统支撑平台,具有完备的集群管理能力,多扩多层次的安全防护和准入机制、多租户应用支撑能力、透明的服务注册和发现机制、內建智能负载均衡器、强大的故障发现和自我修复能力、服务滚动升级和在线扩容能力、可扩展的资源自动调度机制以及多粒度的资源配额管理能力。同时Kubernetes提供完善的管理工具,涵盖了包括开发、部署测试、运维监控在内的各个环节。 Kubernetes中,Service是分布式集群架构的核心,一个Service对象拥有如下关键特征: • 拥有一个唯一指定的名字 • 拥有一个虚拟IP(Cluster IP、Service IP、或VIP)和端口号 •

这些必备的spring知识,你知道多少?快进来测试一下

最后都变了- 提交于 2020-01-02 22:32:41
Spring 原理 它是一个全面的、企业应用开发一站式的解决方案,贯穿表现层、业务层、持久层。但是 Spring仍然可以和其他的框架无缝整合 Spring 特点 轻量级 控制反转 面向切面 容器 框架集合 Spring 核心组件 Spring 常用模块 Spring 主要包 Spring 常用注解 bean 注入与装配的的方式有很多种,可以通过 xml,get set 方式,构造函数或者注解等。简单易用的方式就是使用 Spring 的注解了,Spring 提供了大量的注解方式。 Spring 第三方结合 Spring IOC 原理 概念 Spring 通过一个配置文件描述 Bean 及 Bean 之间的依赖关系,利用 Java 语言的反射功能实例化Bean 并建立 Bean 之间的依赖关系。 Spring 的 IoC 容器在完成这些底层工作的基础上,还提供了 Bean 实例缓存、生命周期管理、 Bean 实例代理、事件发布、资源装载等高级服务。 Spring 容器高层视图 Spring 启动时读取应用程序提供的 Bean 配置信息,并在 Spring 容器中生成一份相应的 Bean 配置注册表,然后根据这张注册表实例化 Bean,装配好 Bean 之间的依赖关系,为上层应用提供准备就绪的运行环境。其中 Bean 缓存池为 HashMap 实现。 IOC 容器实现

docker学习

杀马特。学长 韩版系。学妹 提交于 2020-01-02 21:35:05
docker入门学习 docker是什么? 1.linux下容器技术有很多,docker是做的最杰出的一款 2.docker能够支持阿里双十一,可见安全和并发都没问题 3.docker容器很容易被大规模创建 Docker 最初是 dotCloud 公司创始人 Solomon Hykes 在法国期间发起的一个公司内部项目,于 2013 年 3 月以 Apache 2.0 授权协议开源,主要项目代码在 GitHub 上进行维护。Docker 使用 Google 公司推出的 Go 语言 进行开发实现。docker是linux容器的一种封装,提供简单易用的容器使用接口。它是最流行的Linux容器解决方案。docker的接口相当简单,用户可以方便的创建、销毁容器。docker将应用程序与程序的依赖,打包在一个文件里面。运行这个文件就会生成一个虚拟容器。程序运行在虚拟容器里,如同在真实物理机上运行一样,有了docker,就不用担心环境问题了 4.docker能够解决什么问题? ocke用场景 web应用的自动化打包和发布自动化测试和持续集成、发布在服务型环境中部署和调整数据库或其他应用 5.每一个docker容器,安装一个app 6.docker如同在os的进程上,接着一个马甲,其实还是运行在一个单独linux系统上 7.让开发人员最头疼的就是,环境配置问题,运行一个crm

详解Docker架构、镜像、容器及资源限制

ぃ、小莉子 提交于 2020-01-02 15:52:08
Docker核心 镜像(Image) :类似与虚拟机的镜像,可以将他理解为一个面向Docker引擎的只读模板,包含了文件系统。 容器(Container) :类似于一个轻量级的沙箱子(因为Docker是基于Linux内核的虚拟技术,所以消耗资源十分少),Docker利用容器来运行和隔离应用。 仓库(Repository )类似与代码仓库,是Docker集中存放镜像文件的场所。 Docker特点 1.简化部署配置 极大提高工作效率。 2.轻量级 可移植。 3.启动和停止可以在秒级实现。 4.节省硬件资源。 5.直接在在操作系统层面上实现的虚拟化 Docker安装 安装依赖包 yum install -y yum-utils device-mapper-persistent-data lvm2 设置阿里云镜像源 yum-config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo 安装Docker-CE yum install -y docker-ce 开启服务并设为开机自启 systemctl start docker.service systemctl enable docker.service 加速 重载 tee /etc/docker/daemon.json

阿里云物联网边缘计算加载MQTT驱动

♀尐吖头ヾ 提交于 2020-01-02 09:24:24
写在前面 本文在LinkEdge快速入门样例驱动的基础上,加载了MQTT订阅的客户端,使得边缘端容器可以通过MQTT获得外部数据。 1. 系统需求 物联网边缘计算平台,又名Link IoT Edge[1]。在 物联网边缘计算 帮助文档中的 “快速入门”描述了这样一种应用场景,“ 光照传感器 检测室内光照强度是否大于500 Lux,若光照强度大于500 Lux,则光照传感器认为室内不需要开灯,从而去关闭灯( 客厅灯 开关等于1),否则打开灯(客厅灯开关等于0)。” 本文在该样例的基础上,在光照传感器的驱动程序上加载了MQTT订阅的客户端,使得光照传感器可以通过订阅的方式获得光照强度值。 2. 系统架构 图 1 给出了样例的边缘实例架构,样例中LightSensor值是模拟值,通过定时器每2000毫秒执行表格 1中代码。 图 1 边缘实例架构 表格 1 模拟值生成代码 if (self.lightSensor.illuminance >= 600) { delta = -100; } else if (self.lightSensor.illuminance <= 100) { delta = 100; } self.lightSensor.illuminance += delta; 图 2给出了在在光照传感器的驱动程序上加载了MQTT订阅的客户端的架构。 图 2