容器技术

5分钟Docker从入门到出师

£可爱£侵袭症+ 提交于 2019-11-28 07:22:10
Docker是什么? Docker是一个开源的应用容器引擎;是一个轻量级容器技术; Docker支持将软件编译成一个镜像;然后在镜像中各种软件做好配置,将镜像发布出去,其他使用者可以直接使用这个镜像; 运行中的镜像称为容器,容器启动速度非常快。 Docker的组成? docker主机(Host):安装了Docker程序的机器(Docker直接安装在操作系统之上); docker客户端(Client):连接docker主机进行操作; docker仓库(Registry):用来保存各种打包好的软件镜像,一个 Docker Registry中可以包含多个仓库,每个仓库可以包含多个标签(Tag),每个标签对应着一个镜像; docker镜像(Images):软件打包好的镜像,放在docker仓库中,镜像不包含任何动态数据,其内容在构建之后也不会被改变。镜像就是一堆只读层(read-only layer); docker容器(Container):镜像启动后的实例称为一个容器,容器是独立运行的一个或一组应用,容器 = 镜像 + 读写层; Docker的安装?(安装简单,不再讲解,具体请移步官方文档) MacOS:https://docs.docker.com/docker-for-mac/install/ Windows:https://docs.docker.com/docker-for

Docker和ASP.NET Core

半腔热情 提交于 2019-11-28 07:07:43
Docker和ASP. NET Core Docker 正在逐渐成为容器行业的事实标准,受到 Windows 和 Linux 生态系统领域最重要供应商的支持。 (Microsoft 是支持 Docker 的主要云供应商之一。)现在,Docker 基本上已经在各大云或本地的任何数据中心普及了。 如何将.NET程序托管到Docker之中,相信这是广大.NET开发者的一个疑问。 事实上,. NET Framework 支持在Docker中运行,但是仅能在w indows 容器中运行,这并不符合我们的预期,因此,本篇我们只侧重于讨论ASP. NET Core 和Docker。 在使用之前,笔者还是有必要介绍下ASP.NET Core。如果您对此非常熟悉和了解或者对此节不感兴趣,可以跳过本节。 A SP . NET Core 简介 ASP.NET Core是一个 跨平台的高性能开源框架 ,用于生成基于云且连接 Internet 的新式应用程序。使用 ASP.NET Core,我们可以: 建置 Web 应用程序和服务、 IoT 应用和移动后端。 能够在 Windows、macOS 和 Linux 上进行开发和运行。部署到云或本地。 在 .NET Core 或 .NET Framework 上运行。 能够在 IIS、Nginx、Apache、Docker

docker的体系结构

北慕城南 提交于 2019-11-28 06:20:58
一,docker的体系结构:docker使用c/s架构,docker daemon作为server端接受client的请求,并处理(创建、运行、分发容器)它们可以同时运行在一个机器上,也可以通过socket或者RESTful API通信。 注:docker daemon :一般在宿主主机后台运行。 docker client以系统命令的形式存在,用户用docker命令来跟docker daemon来产生交互。 二,Docker守护进程(Docker daemon) docker守护进程运行在一台主机上。用户并不直接和守护进程产生交互,而是通过docker客户端间接通信。 docker客户端(Docker client):实际上就是docker的二进制程序,是用户和docker交互的一种方式。它用来接收用户指令并且和docker的守护进程进行通信。 三,docker三大核心:docker镜像——docker images、docker仓库——docker repository 和docker容器——docker containers 。要想理解docker的生命周期,就必须彻底理解和掌握这三个核心概念 1,docker镜像是docker容器运行时的只读模板。docker镜像可以用来创建docker容器,每一个镜像都是由一系列的层(layers)组成的。docker使用UnionFS

Java Servlet入门

℡╲_俬逩灬. 提交于 2019-11-28 06:10:05
静态web页面:html+css+js,页面是静态的、不变的,显示给每个用户的页面都一样。 动态web页面:php、jsp、asp,根据用户、实时数据(数据库)来动态显示页面,不同的用户,显示的页面可能不同。 Servlet应用的体系结构 浏览器发送HTTP请求,HTTP服务器(比如Apache)接受并解析HTTP请求,对静态资源的请求由HTTP服务器负责处理,对Servlet的请求由HTTP服务器转交给Servlet容器处理。 Servlet容器(比如Tomcat)根据映射关系,调用相应的Servlet来处理请求,Servlet处理完毕将结果返回给Servlet容器,Servlet容器将结果转交给HTTP服务器,HTTP服务器以HTTP响应的形式将结果返回给浏览器。 常用的web服务器 WebLogic WebSphere JBoss Tomcat 开源免费,短小精悍,适合中小型项目、访问量不大的项目。如果项目并发很高,Tomcat可能承载不起,需要使用上面专业的、商用的服务器。 Servlet的特点 跨平台。Servlet是JavaEE的一种技术,Java是跨平台的。 可扩展。Servlet指实现了javax.servlet.Servlet接口的Java类,通过继承可扩展Servlet的功能。 javax.servlet.Servlet接口中的常用方法 void init

Docker基础概念

假如想象 提交于 2019-11-28 06:09:01
一、什么是Docker?   Docker 是一个基于Go语言实现的开源应用容器项目,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的 Linux机器上,也可以实现虚拟化。Docker的构想是要实现对应用组件级别的“一次封装、到处运行”,这里的应用组件,既可以是一个Web应用、一个编译环境,也可以是一套数据库平台服务,甚至是一个操作系统或集群。   Docker的诞生在Linxu容器(LXC)之上的。在LXC的基础上,Docker进一步优化了容器的使用体验。Docker提供了各种容器管理工具,让用户无需关注底层的操作,更加简明地管理和使用容器。 二、为什么使用Docker? 1、更高效地利用系统资源   Docker容器不需要进行硬件虚拟化,没有虚拟机管理应用和虚拟机操作系统的开销,而是直接复用本机的操作系统,对系统资源的利用更高效。无论是应用执行速度、内存损耗或者文件存储速度,都要比传统虚拟机技术更高 效。 2、轻松地应用迁移   在云时代,开发者创建的应用必须要能够很方便地在网络上传播,也就是必须脱离底层物理硬件的限制。以传统的方式进行应用迁移时,必须保证新宿主机与原来的机器环境一致,就需要搭建环境、部署项目、调试等一系列操作,费时费力。而Docker通过容器来打包应用、使应用和机器环境解耦,迁移的时候只需要在新的服务器上启动容器即可。 3

Docker入门(初级)

可紊 提交于 2019-11-28 06:08:19
注意:命令基于centos7.5 一、什么 是 Docker ?   通俗的理解,Docker就是虚拟机。但Docker不是虚拟机,Docker是对操作系统进行虚拟,而虚拟机是虚拟了一套或多套硬件,再在这虚拟的硬件上安装操作系统。   容器 是一个应用层抽象,用于将代码和依赖资源打包在一起。 多个容器可以在同一台机器上运行,共享操作系统内核,但各自作为独立的进程在用户空间中运行 。与虚拟机相比, 容器占用的空间较少(容器镜像大小通常只有几十兆),瞬间就能完成启动 。   虚拟机 (VM)是一个物理硬件层抽象,用于将一台服务器变成多台服务器。 管理程序允许多个VM在一台机器上运行。每个VM都包含一整套操作系统、一个或多个应用、必要的二进制文件和库资源,因此占用大量空间。而且VM启动也十分缓慢 。   Docker使用Google公司推出的Go语言进行开发实现,基于Linux内核的cgroup,namespace,以及AUFS类的UnionFS等技术,对进程进行封装隔离,属于操作系统层面的虚拟化技术。 由于隔离的进程独立于宿主和其它的隔离的进程,因此也称其为容器。Docke最初实现是基于LXC。   Docker能够自动执行重复性任务,例如搭建和配置开发环境,从而解放了开发人员以便他们专注在真正重要的事情上:构建杰出的软件。   用户可以方便地创建和使用容器,把自己的应用放入容器

docker入门(一)

十年热恋 提交于 2019-11-28 06:08:03
1. Docker是什么? 官方的解释地址 : Docker是一个开源的引擎,可以轻松的为任何应用创建一个轻量级的、可移植的、自给自足的容器。开发者在笔记本上编译测试通过的容器可以批量地在生产环境中部署,包括VMs(虚拟机)、bare metal、OpenStack 集群和其他的基础应用平台。 菜鸟教程的解释: Docker 是一个开源的应用容器引擎,基于 Go 语言 并遵从Apache2.0协议开源。 Docker 可以让开发者打包他们的应用以及依赖包到一个轻量级、可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化。 容器是完全使用沙箱机制,相互之间不会有任何接口(类似 iPhone 的 app),更重要的是容器性能开销极低。 《Docker开发实践》: 《Docker开发实践》中讲了个故事:20世纪60年代以前的海运,货物都放置在一起,很容易挤压受损。同时,不同的运输方式之间的转运也很麻烦,例如从码头和火车汽车转运卸货时。不同货物和不同交通工具之间的组合是一个巨大的二维矩阵。海运界最后达成了一致,制定了国际标准集装箱来解决这个棘手的问题。所有货物都打包进集装箱互相隔离,所有交通工具都通过集装箱转运,极大地提供了运输的安全性和效率。 在软件开发中我们也经常碰到同样的问题,使用了各种各样技术框架的应用程序,从前端静态网站到后端数据库,从PHP到Java

Docker基础入门总结

匆匆过客 提交于 2019-11-28 06:07:47
一、什么是Docker   官方文档描述:“Docker is an open platform for developing, shipping, and running applications. Docker enables you to separate your applications from your infrastructure so you can deliver software quickly. With Docker, you can manage your infrastructure in the same ways you manage your applications. By taking advantage of Docker’s methodologies for shipping, testing, and deploying code quickly, you can significantly reduce the delay between writing code and running it in production.”   一句话概括容器:容器就是将软件打包成标准化单元,以用于开发、交付和部署。 Docker使用Google公司推出的Go语言进行开发实现, 基于Linux内核的cgroup,namespace

Kubernetes容器编排技术---Kubernetes安装与配置

和自甴很熟 提交于 2019-11-28 06:03:09
Kubernetes安装与配置 # apt-get install docker-ce kubelet kubeadm kubectl 配置docker启动配置文件 # vim /lib/systemd/system/docker.service 确保如下两个文件中的值为1 root@kubernetes-mast:/etc/apt# cat /proc/sys/net/bridge/bridge-nf-call-iptables 1 root@kubernetes-mast:/etc/apt# cat /proc/sys/net/bridge/bridge-nf-call-ip6tables 1 来源: https://www.cnblogs.com/weidongliu/p/11396231.html

Spring Boot开发Web应用之JSP篇

☆樱花仙子☆ 提交于 2019-11-28 05:42:53
前言 上一篇介绍了Spring Boot中使用Thymeleaf模板引擎,今天来介绍一下如何使用SpringBoot官方不推荐的jsp,虽然难度有点大,但是玩起来还是蛮有意思的。 正文 先来看看整体的框架结构,跟前面介绍Thymeleaf的时候差不多,只是多了webapp这个用来存放jsp的目录,静态资源还是放在resources的static下面。 引入依赖 123456789101112131415161718 <!--WEB支持--><dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId></dependency><!--jsp页面使用jstl标签--><dependency> <groupId>javax.servlet</groupId> <artifactId>jstl</artifactId></dependency><!--用于编译jsp--><dependency> <groupId>org.apache.tomcat.embed</groupId> <artifactId>tomcat-embed-jasper</artifactId> <scope>provided</scope></dependency>