容器

Docker容器的特权模式介绍

孤街醉人 提交于 2020-01-30 13:07:15
启动一个普通的容器 docker run -itd --name centos centos:7 安装网络工具 yum install -y net-tools 执行route -n 删除网关 route del default gw 172.17.0.2 删除失败:SIOCDELRT: Operation not permitted 启动拥有特权模式的容器 docker run -itd --privileged=true --name mycentos1 centos:7 进入容器 docker exec -it 容器id /bin/bash 删除网关 route del default gw 172.17.0.2 删除成功 备注:特权模式使用较少 来源: https://www.cnblogs.com/weisunblog/p/12242466.html

Laravel 的核心概念

拜拜、爱过 提交于 2020-01-30 09:35:45
工欲善其事,必先利其器。在开发 Xblog 的过程中,稍微领悟了一点Laravel的思想。确实如此,这篇文章读完你可能并不能从无到有写出一个博客,但知道Laravel的核心概念之后,当你再次写起Laravel时,会变得一目了然胸有成竹。 PHP的生命周期 # 万物皆有他的生命周期。熟悉Android的同学一定熟悉Android最经典的Activity的生命周期,Laravel 也不例外,Laravel应用程序也有自己的生命周期。Laravel是什么?一个PHP框架。所以要想真正说清Laravel的生命周期,必须说清PHP的生命周期。原文参考 这里 ,这里做个总结。 Php有两种运行模式,WEB模式和CLI(命令行)模式。当我们在终端敲入php这个命令的时候,使用的是CLI模式;当使用Nginx或者别web服务器作为宿主处理一个到来的请求时,会调用Php运行,此时使用的是WEB模式。当我们请求一个Php文件时,比如Laravel 的 public\index.php 文件时,Php 为了完成这次请求,会发生5个阶段的生命周期切换: 模块初始化(MINIT),即调用 php.ini 中指明的扩展的初始化函数进行初始化工作,如 mysql 扩展。 请求初始化(RINIT),即初始化为执行本次脚本所需要的变量名称和变量值内容的符号表,如 $_SESSION 变量。 执行该PHP脚本。

laravel生命周期和核心思想

谁说我不能喝 提交于 2020-01-30 09:19:43
工欲善其事,必先利其器。在开发Xblog的过程中,稍微领悟了一点Laravel的思想。确实如此,这篇文章读完你可能并不能从无到有写出一个博客,但知道Laravel的核心概念之后,当你再次写起Laravel时,会变得一目了然胸有成竹。 PHP的生命周期 万物皆有他的生命周期。熟悉Android的同学一定熟悉Android最经典的Activity的生命周期,Laravel 也不例外,Laravel应用程序也有自己的生命周期。Laravel是什么?一个PHP框架。所以要想真正说清Laravel的生命周期,必须说清PHP的生命周期。原文参考这里,这里做个总结。 PHP有两种运行模式,WEB模式和CLI(命令行)模式。当我们在终端敲入php这个命令的时候,使用的是CLI模式;当使用Nginx或者别web服务器作为宿主处理一个到来的请求时,会调用PHP运行,此时使用的是WEB模式。当我们请求一个PHP文件时,比如Laravel 的 public\index.php 文件时,PHP为了完成这次请求,会发生5个阶段的生命周期切换: 模块初始化(MINIT),即调用 php.ini 中指明的扩展的初始化函数进行初始化工作,如 mysql 扩展。 请求初始化(RINIT),即初始化为执行本次脚本所需要的变量名称和变量值内容的符号表,如 $_SESSION 变量。 执行该PHP脚本。 请求处理完成

翻译 What is the concept of Service Container in Laravel?

六月ゝ 毕业季﹏ 提交于 2020-01-30 08:02:02
原文链接: https://stackoverflow.com/questions/37038830/what-is-the-concept-of-service-container-in-laravel#answer-37039108 Laravel中的服务容器是依赖注入容器,也是应用的注册器 在手工创建对象时,使用服务容器的优势是: 拥有对象创建时管理所需要的依赖的能力 你规定在应用中对象应该如何被创建,每次你需要去创建实例时,你只要管服务容器要,它将一并把必要的依赖问题解决并为你创建 比如,代替手工使用new关键字创建对象: //每日次我们需要YourClass类时,我们需要手动传入一个依赖 $instance = new YourClass($dependency); 你可以在服务容器中注册一个绑定: //为YourClass类添加一个绑定 App::bind( YourClass::class, function() { //做一些准备工作:创建一个必要的依赖 $dependency = new DepClass( config('some.value') ); //创建并且返回对象的依赖 return new YourClass( $dependency ); }); 通过服务容器创建一个实例: //没必要去创建YourClass类依赖,服务容器将为我们做!

[php]laravel框架容器管理的一些要点

时光毁灭记忆、已成空白 提交于 2020-01-30 06:27:04
原文地址: https://www.cnblogs.com/lyzg/p/6181055.html 阅读目录 1. laravel容器基本认识 2. 如何在代码中获取到容器实例 3. 直观的认识laravel容器 4. 如何理解服务绑定与解析 5. 服务提供者的作用与使用 6. 服务绑定名称的别名 7. 依赖注入的机制 8. 其它 本文面向php语言的laravel框架的用户,介绍一些laravel框架里面容器管理方面的使用要点。文章很长,但是内容应该很有用,希望有需要的朋友能看到。php经验有限,不到位的地方,欢迎帮忙指正。 1. laravel容器基本认识 laravel框架是有一个容器框架,框架应用程序的实例就是一个超大的容器,这个实例在bootstrap/app.php内进行初始化: 这个文件在每一次请求到达laravel框架都会执行,所创建的$app即是laravel框架的应用程序实例,它在整个请求生命周期都是唯一的。laravel提供了很多服务,包括认证,数据库,缓存,消息队列等等,$app作为一个容器管理工具,负责几乎所有服务组件的实例化以及实例的生命周期管理。这种方式能够很好地对代码进行解耦,使得应用程序的业务代码不必操心服务组件的对象从何而来,当需要一个服务类来完成某个功能的时候,仅需要通过容器解析出该类型的一个实例即可。从最终的使用方式来看

C++ STL容器之map 简单使用

梦想的初衷 提交于 2020-01-30 06:10:40
3.8.2.1 map构造函数 map<T1, T2> mapTT;//map默认构造函数: map(const map &mp);//拷贝构造函数 3.8.2.2 map赋值操作 map& operator=(const map &mp);//重载等号操作符 swap(mp);//交换两个集合容器 3.8.2.3 map大小操作 size();//返回容器中元素的数目 empty();//判断容器是否为空 3.8.2.4 map插入数据元素操作 map.insert(...); //往容器插入元素,返回pair<iterator,bool> map<int, string> mapStu; // 第一种 通过pair的方式插入对象 mapStu.insert(pair<int, string>(3, "小张")); // 第二种 通过pair的方式插入对象 mapStu.inset(make_pair(-1, "校长")); // 第三种 通过value_type的方式插入对象 mapStu.insert(map<int, string>::value_type(1, "小李")); // 第四种 通过数组的方式插入值 mapStu[3] = "小刘"; mapStu[5] = "小王"; 3.8.2.5 map删除操作 clear();//删除所有元素 erase(pos);/

Spring入门(1)IOC容器简介

a 夏天 提交于 2020-01-30 04:40:42
1、IOC简介 学术:IoC就是一个对象定义其依赖关系而不创建它们的过程。 目的:省去new 创建对象的过程。在之前我们使用一个class,需要先 aaa = new bbb()一个对象。用了IOC,直接通过配置或者注释的手段,注册到容器中。无需new创建,即可直接使用 bbb()对象方法。 2、代码说明 (1)导包 核心容器 spring-beans-4.0.0.RELEASE.jar spring-context-4.0.0.RELEASE.jar spring-core-4.0.0.RELEASE.jar spring-expression-4.0.0.RELEASE.jar commons-logging-1.1.3.jar Spring运行的时候依赖一个日志包;没有就报错; (2)代码 package com . atguigu . bean ; public class Person { private String lastName ; private Integer age ; private String gender ; private String email ; public Person ( ) { super ( ) ; // TODO Auto-generated constructor stub System . out . println (

STL之deque用法

和自甴很熟 提交于 2020-01-30 02:33:42
deque:双端队列 底层是一个双向链表。 常用的有队列的尾部入队、首部出队。 普通队列:queue queue 模板类的定义在<queue>头文件中。 与stack 模板类很相似,queue 模板类也需要两个模板参数,一个是元素类型,一个容器类 型,元素类型是必要的,容器类型是可选的,默认为deque 类型。 定义queue 对象的示例代码如下: queue<int> q1; queue<double> q2; queue 的基本操作有: 入队,如例:q.push(x); 将x 接到队列的末端。 出队,如例:q.pop(); 弹出队列的第一个元素,注意,并不会返回被弹出元素的值。 访问队首元素,如例:q.front(),即最早被压入队列的元素。 访问队尾元素,如例:q.back(),即最后被压入队列的元素。 判断队列空,如例:q.empty(),当队列空时,返回true。 访问队列中的元素个数,如例:q.size() 摘自: http://www.cnblogs.com/liubilan/p/9461141.html deque - 双向队列 1.构造 无参构造: deque<T> a;  //<>内自定义数据类型; 带参构造: deque(beg,end); //构造函数将[beg, end)区间中的元素拷贝给本身。注意该区间是左闭右开的区间。 deque(n,elem); /

STL容器之vector

自作多情 提交于 2020-01-30 01:50:30
Vectors 包含着一系列连续存储的元素,其行为和数组类似。 访问Vector中的任意元素或从末尾添加元素都可以在常量级时间复杂度内完成,而查找特定值的元素所处的位置或是在Vector中插入元素则是线性时间复杂度。 vector定义了五种构造函数分别是: vector<T> v1; vector<T> v2(v1); vector<T> v3(b, e) vector<T> v4(n, i); vector<T> v5(n); vector包含如下接口函数,如需详细了解,请参阅相关帮助文档 Constructors 构造函数 Operators 对vector进行赋值或比较 assign() 对Vector中的元素赋值 at() 返回指定位置的元素 back() 返回最末一个元素 begin() 返回第一个元素的迭代器 capacity() 返回vector所能容纳的元素数量(在不重新分配内存的情况下) clear() 清空所有元素 empty() 判断Vector是否为空(返回true时为空) end() 返回最末元素的迭代器(译注:实指向最末元素的下一个位置) erase() 删除指定元素 front() 返回第一个元素 get_allocator() 返回vector的内存分配器 insert() 插入元素到Vector中 max_size()

spring5学习系列之------1 给容器注册组件一 @Configuration  @Bean  @Scope  @Lazy

两盒软妹~` 提交于 2020-01-30 01:07:21
在工作中我们对spring已经很常用了,但是用的大部分都是spring一些很少的部分,该系列是基于spring5版本的,先介绍相关组件的内容,在涉及到源码内容。话不多说,直接上干货吧 常用注解之给容器注册组件 一般来说,最原始的spring使用方式是用到xml写一些配置文件,然后spring读取配置文件进行扫描并且注册到容器之中,但是现在基本上都是给予注解的开发,并且以springboot快速开发为主,springboot底层也是使用的spring,因此本系列基本上是基于注解方式的讲解。 首先idea 创建一个spring的项目,pom.xml引入相关配置 spring之所以被用到的这么多,最重要的主要功能就是IOC和AOP,关于ioc和aop的相关概念这里就不多做解释了,首先我们测试一下ioc容器的相关功能,如何给容器中注册我们需要的组件呢?一般来说有四种方式 1 @Bean[导入的第三方包里面的组件] 我们首先创建一个POJO person ,然后写一个配置类并且标注注解@Configuration,和在方法写一个@Bean的注解 import lombok.AllArgsConstructor; import lombok.Data; import lombok.NoArgsConstructor;Data @NoArgsConstructor