说明,我这里使用的是compose的版本的1.17.0格式是3,但是这和compose版本无关,你只需要添加MONGO_INITDB_ROOT_USERNAME和MONGO_INITDB_ROOT_PASSWORD到你的环境变量中即可. #使用官方mongo:3.2的image,compose文件如下,其中当你加入环境变量MONGO_INITDB_ROOT_USERNAME和MONGO_INITDB_ROOT_PASSWORD(缺一不可)后mongodb自动开启权限验证,这在mongo官方镜像文…
本篇可以归纳在性能调优篇,虽然内容非常简单,但效果可能出乎预料的好: 分享一个真实案例,我们的服务部署在海外,国内访问时访问服务时,响应有点夸张:某些返回数据比较大的接口,耗时在 600ms+上,然而我们的服务 rt 却是在 20ms 以下,绝大部分的开销都花在了网络传输上 针对这样的场景,除了买云服务商的网络通道之外,另外一个直观的想法就是减少数据包的大小,直接在 nginx 层配置 gzip 压缩是一个方案,本文主要介绍下,SpringBoot 如何开启 gzip 压缩 I. gizp 压缩…
最近一直忙于开发,没有时间好好总结一下docker的知识.其实现在docker的教程已经很多很多了,但是很多系统的教程都是基于Ubuntu系统,因为官方推荐使用Ubuntu系统啊,原因在于Ubuntu有Union FS 这类存储系统,而Centos并没有,只能使用块设备的一些机制(如 snapshot )进行模拟,如 devicemapper.所以我想写一个关于Centos上使用并部署的Docker的系列文章,希望能帮助大家学习. Docker 版本号在 2017 年以前,使用 <大版本号>.…
默认启动:   $ ./mongodb   默认数据保存路径:/data/db/ 默认端口:27017   修改默认路径:   --dbpath $ ./mongdb --dbpath /mongodb/ 把数据存储位置指向一个自己的目录/mongodb/   修改默认端口:   --port $ ./mongdb --port 20111 把服务端口修改为20111,这个一方面是为了安全,使用默认端口容易被一些恶意的人发现做手脚   启动后台服务:   --fork 在后台开启Mongdb服务…
docker系列导读 一文带你读懂什么是docker Docker安装部署 10张图带你深入理解Docker容器和镜像 前言 学习Docker,我们需要掌握它的三大核心概念:镜像.容器和仓库. 今天先带大家学习Docker镜像相关的基础知识. Docker镜像简介 1.什么是镜像? Docker镜像是一个只读的模板.如果读者之前是VM管理员,则可以把Docker镜像理解为VM模板,如果您是一名研发人员,可以将镜像理解为类(class). 简单说,Docker镜像是一个不包含系统内核而又精简的操作…
Cobalt Strike系列教程分享如约而至,新关注的小伙伴可以先回顾一下前面的内容: Cobalt Strike系列教程第一章:简介与安装 Cobalt Strike系列教程第二章:Beacon详解 Cobalt Strike系列教程第三章:菜单栏与视图 Cobalt Strike系列教程第四章:文件/进程管理与键盘记录 Cobalt Strike系列教程第五章:截图与浏览器代理 Cobalt Strike系列教程第六章:安装扩展 今天我们将继续分享Cobalt Strike系列教程的其他章…
1.安装mongodb mongdb的安装很简单,只需要下载解压后运行mongod就好了 wget https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-3.0.6.tgz tar -zxvf mongodb-linux-x86_64-3.0.6.tgz mv mongodb-linux-x86_64-3.0.6 mongodb #启动 /usr/local/mongodb/bin/mongod 启动后,可以另开一个窗口通过命令进行测试 更多…
简介 仓库(Repository)是集中存放镜像的地方,又分为公共镜像和私有仓库. 当我们执行docker pull xxx的时候,它实际上是从registry.docker.com这个地址去查找,这就是Docker公司为我们提供的公共仓库.在工作中,我们不可能把企业项目上传到公共仓库进行管理,所以为了更多管理镜像,Docker允许我们搭建本地私有仓库. 私有仓库最常用的就是registry.Harbor两种,那接下来详细介绍如何搭建私有仓库. 搭建registry私有仓库 Docker 官方提…
https://mp.weixin.qq.com/s?__biz=MzI4ODQ3NjE2OA==&mid=2247483890&idx=1&sn=2721f08624e6de33b3ae56be2b117006&chksm=ec3c9c95db4b1583529fc6542093367a97ffe6173c030d896f9ae9c5451db03ce879bdc6cfb1&scene=0&key=ce207f8008531ca887da8b19de769…
引言 在Docker中,容器的数据读写默认发生在容器的存储层,当容器被删除时其上的数据将会丢失.要想实现数据的持久化,需要将数据从宿主机挂载到容器中.目前Docker提供了三种方式将数据从宿主机挂载到容器中. Volume 普通数据卷,映射到/var/lib/docekr/volumes目录下. bind mounts 绑定数据卷,映射到宿主机指定路径下 tmpfs mounts 临时卷,只存在于宿主机内存中 三种方式的示意图如下所示: 一.Volume的基本使用 1.创建数据卷 1.创建一个V…
简介 通过前面的学习,相信您已经对镜像有所了解,是时候学习容器了. 容器是Docker的另一个核心概念.简单来说,容器是镜像的一个运行实例.正如从虚拟机模板上启动VM一样,用户也同样可以从单个镜像上启动一个或多个容器. 本章带大家学习容器相关的重要操作,包括创建容器.启动容器.终止容器.进入容器后执行操作.删除容器及通过导入导出容器实现容器迁移.容器与宿主机之间数据拷贝等. 1.创建容器 1.新建容器 语法格式: docker create 语法 例如: [root@qll251 ~]# doc…
在ES6之前,我们一般用短路表达式处理默认参数 function show( a, b ){ var a = a || 10; var b = b || 20; console.log( a, b ); } show( 100, 200 ); //100, 200 show(); //10, 20 show( 0, 0 ); // 10, 20, 0会被当做false 短路表达式(就是上例中的 || )的运算规则是: var res = a || 20;   如果a是true 就返回a, 如果a…
作者:周立 在生产中,往往有严格控制服务启动顺序的需求.然而Docker Compose自身并不具备该能力.要想实现启动顺序的控制,Docker Compose建议我们使用: wait-for-it dockerize wait-for 本文演示如何使用wait-for-it 来控制服务的启动顺序,其他两款工具的使用方法大同小异,读者可自行研究. 还用前面编排WordPress博客的例子,现在我们想让MySQL先启动,启动完成后再启动WordPress. 分析 分析:找到WordPress的Do…
简介 创建镜像的方法主要有三种:基于已有镜像的容器创建.基于本地模板导入.基于Dockerfile创建. 今天就逐一讲述为大家讲述,如何构建属于自己的docker镜像. 1.基于容器构建镜像 基于已有容器构建镜像主要是通过docker commit命令来构建新的镜像,语法规则如下: 下面将演示下如何基于已有容器构建镜像 1.首先,创建一个容器,并在其容器内创建一个test文件,之后退出.代码如下: root@ubuntu:~# docker run -it ubuntu:18.04 /bin/b…
Docker入门教程(三)Dockerfile [编者的话]DockerOne组织翻译了Flux7的Docker入门教程,本文是系列入门教程的第三篇,介绍了Dockerfile的语法,DockerOne目前在代码高亮部分还有些Bug,我们会尽快修复,目前在代码部分有会些字符会被转义. 在Docker系列教程的上一篇文章中,我们介绍了15个Docker命令,你应该对Docker有个大致的了解了.那15个命令在手动创建镜像时会用到,它们涵盖了镜像的创建.提交.搜索.pull和push的功能. 现在问…
[TOC] 一.Mongodb 的权限管理 认识权限管理,说明主要概念及关系 与大多数数据库一样,Mongodb同样提供了一套权限管理机制. 为了体验Mongodb 的权限管理,我们找一台已经安装好的Mongodb,可以参照这里搭建一个单节点的Mongodb. 直接打开mongo shell: ./bin/mongo --port=27017 尝试执行stats命令以查看appdb数据库的状态: MongoDB Enterprise > use appdb MongoDB Enterprise…
原文: 191122-SpringBoot系列教程web篇Servlet 注册的四种姿势 前面介绍了 java web 三要素中 filter 的使用指南与常见的易错事项,接下来我们来看一下 Servlet 的使用姿势,本篇主要带来在 SpringBoot 环境下,注册自定义的 Servelt 的四种姿势 @WebServlet 注解 ServletRegistrationBean bean 定义 ServletContext 动态添加 普通的 spring bean 模式 I. 环境配置 1.…
深入探讨Android异步精髓Handler 站在源码的肩膀上全解Scroller工作机制 Android多分辨率适配框架(1)- 核心基础 Android多分辨率适配框架(2)- 原理剖析 Android多分辨率适配框架(3)- 使用指南 自定义View系列教程00–推翻自己和过往,重学自定义View 自定义View系列教程01–常用工具介绍 自定义View系列教程02–onMeasure源码详尽分析 自定义View系列教程03–onLayout源码详尽分析 自定义View系列教程04–Dra…
深入探讨Android异步精髓Handler 站在源码的肩膀上全解Scroller工作机制 Android多分辨率适配框架(1)- 核心基础 Android多分辨率适配框架(2)- 原理剖析 Android多分辨率适配框架(3)- 使用指南 自定义View系列教程00–推翻自己和过往,重学自定义View 自定义View系列教程01–常用工具介绍 自定义View系列教程02–onMeasure源码详尽分析 自定义View系列教程03–onLayout源码详尽分析 自定义View系列教程04–Dra…
深入探讨Android异步精髓Handler 站在源码的肩膀上全解Scroller工作机制 Android多分辨率适配框架(1)- 核心基础 Android多分辨率适配框架(2)- 原理剖析 Android多分辨率适配框架(3)- 使用指南 自定义View系列教程00–推翻自己和过往,重学自定义View 自定义View系列教程01–常用工具介绍 自定义View系列教程02–onMeasure源码详尽分析 自定义View系列教程03–onLayout源码详尽分析 自定义View系列教程04–Dra…
Docker入门教程(九)10个镜像相关的API [编者的话]DockerOne组织翻译了Flux7的Docker入门教程,本文是系列入门教程的第九篇,重点介绍了镜像相关的Docker Remote API. 在Docker系列教程的上一篇文章中,我们讨论了Docker Remote API,并具体学习了有关容器的命令.在这篇文章中,我们将讨论有关镜像的命令. 创建镜像 镜像可以通过以下两种方式来创建: 从Registry中提取 导入镜像 POST /images/create 截图示例: 利用…
Docker入门教程(八)Docker Remote API [编者的话]DockerOne组织翻译了Flux7的Docker入门教程,本文是系列入门教程的第八篇,重点介绍了Docker Remote API. 在Docker系列教程的上一篇文章中,我们学习了Docker Hub 以及 Docker Registry API.在本文中,让我们来看看Docker Remote API. Docker Remote API Docker Remote API是一个取代远程命令行界面(rcli)的RE…
Docker入门教程(七)Docker API [编者的话]DockerOne组织翻译了Flux7的Docker入门教程,本文是系列入门教程的第七篇,重点介绍了Docker Registry API和Docker Hub API. 纵观我们的Docker系列教程,我们已经讨论了很多重要的Docker组件与命令.在本文中,我们将继续深入学习Docker:剖析Docker APIs. Docker提供了很多的API以便用户使用.这些API包含四个方面: Docker Registry API Doc…
Docker入门教程(六)另外的15个Docker命令 [编者的话]DockerOne组织翻译了Flux7的Docker入门教程,本文是系列入门教程的第六篇,继续介绍Docker命令.之前的第二篇文章中我们就介绍了一些基本的Docker命令,本文过后,你将会接触到所有的Docker常用命令.努力学习吧. 在之前的文章中,我们介绍了15个Docker命令,并分享了它们的实践经验.在这篇文章中,我们将学习另外的15个Docker命令.它们分别是: daemon: Docker daemon是一个用于…
Docker入门教程(五)Docker安全 [编者的话]DockOne组织翻译了Flux7的Docker入门教程,本文是系列入门教程的第五篇,介绍了Docker的安全问题,依然是老话重谈,入门者可以通过阅读本文快速了解. 我们必须高度重视开源软件的安全问题,当开发者在使用Docker时,从本地构建应用程序到生产环境部署是没有任何差异的(译者注:作者的言外之意是更应该重视Docker的安全问题).当Docker被越来越多的平台使用的时候,我们需要严格保证Docker作为一个项目或者平台的安全性.…
Docker入门教程(四)Docker Registry [编者的话]DockerOne组织翻译了Flux7的Docker入门教程,本文是系列入门教程的第四篇,介绍了Docker Registry,它是Docker中的重要组件.本文通过情景演绎的方式对其进行了介绍,图文并茂,强烈推荐读者阅读. 在Docker系列教程的上一篇文章中,我们讨论了Dockerfile的重要性并提供了一系列Dockerfile的命令,使镜像的自动构建更加容易.在这篇文章中,我们将介绍Docker的一个重要组件:Dock…
Docker入门教程(二)命令 [编者的话]DockerOne组织翻译了Flux7的Docker入门教程,本文是系列入门教程的第二篇,介绍了Docker的基本命令以及命令的用法和功能. 在Docker系列教程的第一篇文章中,我们了解了Docker的基础知识,知道了它是如何工作以及如何安装的.在这篇文章中,我们将学习15个Docker命令,并通过实践来学习它是如何工作的. 首先,让我们通过下面的命令来检查Docker的安装是否正确: docker info  如果没有找到这条命令,则表示Docke…
http://dockone.io/article/101 Docker入门教程(一)介绍 [编者的话]DockerOne组织翻译了Flux7的Docker入门教程,本文是系列入门教程的第一篇,介绍了Docker的基础概念以及Docker的安装. Docker是一个新的容器化的技术,它轻巧,且易移植,号称“build once, configure once and run anywhere(译者注:这个就不翻译了,翻译出来味道就没了)”.本文是Flux7的Docker系列教程的第一部分.请和这…
springCloud系列教程包含如下内容: springCloud系列教程01:Eureka 注册中心集群搭建 springCloud系列教程02:ConfigServer 配置中心server搭建 springCloud系列教程03:ConfigClient 配置中心client搭建 springCloud系列教程04:配置信息动态刷新 /bus/refresh springCloud系列教程05:@FeignClient微服务间接口调用及权限验证 springCloud系列教程06:zuu…
java web三要素Filter, Servlet前面分别进行了介绍,接下来我们看一下Listener的相关知识点,本篇博文主要内容为SpringBoot环境下,如何自定义Listener并注册到spring容器 I. 环境配置 1. 项目搭建 首先我们需要搭建一个web工程,以方便后续的servelt注册的实例演示,可以通过spring boot官网创建工程,也可以建立一个maven工程,在pom.xml中如下配置 <parent> <groupId>org.springfra…