docker
股海孙悟空
wx 公众号 股海孙悟空
展开
-
Docker下RabbitMQ四部曲之二:细说RabbitMQ镜像制作
本章是《Docker下RabbitMQ四部曲》系列的第二篇,将详细简述Docker下制作RabbitMQ镜像的技术细节,包括以下内容: 1. 列举制作RabbitMQ镜像时用到的所有材料; 2. 编写Dockerfile; 3. 编写容器启动时执行的脚本startrabbit.sh; 4. 单机版RabbtiMQ环境的docker-compose.yml说明; 5. 集群版RabbitMQ环境的d...原创 2018-06-27 09:52:09 · 1204 阅读 · 0 评论 -
Docker下RabbitMQ四部曲之一:极速体验(单机和集群)
从本章开始,我们一起在Docker环境实战RabbitMQ环境部署和对应的Java开发,当前是《Docker下RabbitMQ四部曲》系列的第一篇,整个系列由以下四篇文章组成: 1. 第一篇,即本章,我们用最快的方式体验RabbitMQ单机环境下生产和消费消息,然后再体验RabbitMQ集群环境下生产和消费消息; 2. 第二篇,详细说明如何制作RabbitMQ的docker镜像文件,这个镜像支持集...原创 2018-06-26 17:30:24 · 214 阅读 · 0 评论 -
Docker下ELK三部曲之三:K8S上的ELK和应用日志上报
本章是《Docker下ELK三部曲》系列的终篇,前面章节已经详述了ELK环境的搭建以及如何制作自动上报日志的应用镜像,今天我们把ELK和web应用发布到K8S环境下,模拟多个后台server同时上报日志的场景;基础结构本次实战的基础结构如下图所示: 一共有两个Pod:ELK和web应用;ELK的Pod会暴露两个服务,一个暴露logstash的5044端口,给filebeat用,另一个暴露kiban...原创 2018-06-26 17:29:14 · 882 阅读 · 0 评论 -
Docker下ELK三部曲之二:细说开发
本章是《Docker下ELK三部曲》的第二篇,之前的《Docker下ELK三部曲之一:极速体验》部署了ELK,还有一个web应用可以将日志上报到ELK,然后在Kibana提供的页面查询到了日志,今天我们一起深入细节,看看上述服务是如何实现的; 核心技术点前一章中,之所以能通过一个docker-compose.yml将整个环境运行起来,所依赖的核心技术点为以下三个docker镜像: 1. sebp/...原创 2018-06-26 17:27:54 · 645 阅读 · 0 评论 -
Docker下ELK三部曲之一:极速体验
《Docker下ELK三部曲》一共三篇文章,为您揭示如何快速搭建ELK环境,以及如何将web应用的日志上报到ELK用,三部曲内容简述如下: 1. 极速体验ELK服务,即本章的内容; 2. 细说技术详情,例如集成了filebeat服务的镜像如何制作,web应用如何与filebeat服务集成在一个镜像等; 3. 在kubernetes环境搭建ELK服务和web服务,模拟一个应用部署在多个server上...原创 2018-06-26 17:22:09 · 179 阅读 · 0 评论 -
Docker下MySQL主从三部曲之三:binlog日志参数实战
本章是《Docker下MySQL主从三部曲》的终篇,前面的章节我们能够制作镜像来搭建主从同步环境,本章我们来观察binlog参数MASTER_LOG_POS;关于从库同步的设置在设置从库同步的时候一般会使用以下SQL:CHANGE MASTER TO MASTER_HOST='172.17.0.2', \MASTER_USER='rep', \MASTER_PASSWORD='888888',...原创 2018-06-26 17:19:17 · 546 阅读 · 0 评论 -
Docker下MySQL主从三部曲之二:细说镜像制作
本文是《Docker下MySQL主从三部曲》系列的第二篇,上一篇《Docker下MySQL主从三部曲之一:极速体验》我们轻而易举的搭建了MySQL主从同步环境,凭借的是一个docker-compose.yml脚本,今天我们一起来看看这个脚本相关的技术细节,学习如何制作支持MySQL主从同步镜像;镜像要解决的问题在开始制作镜像前,我们先列出镜像要解决的问题: 主库镜像: 1. 开启bin log,I...原创 2018-06-26 17:17:23 · 176 阅读 · 0 评论 -
Docker下MySQL主从三部曲之一:极速体验
从本章开始,我们来实战如何在Docker下快速搭建主从同步的MySQL环境,《Docker下MySQL主从三部曲》由以下三章组成: 1. 本章的内容,以最快的速度搭建和体验一主二从的MySQL主从环境; 2. 细说第一章中的环境背后的技术细节,主要是如何制作MySQL主从的镜像; 3. 验证bin log参数值对主从同步的影响;文章目标写《Docker下MySQL主从三部曲》的目标,是想利用doc...原创 2018-06-26 17:14:24 · 204 阅读 · 0 评论 -
CentOS7环境安装Kubernetes四部曲之四:安装kubectl工具
本文是《CentOS7环境安装Kubernetes四部曲》系列的终篇,经历了前三篇文章的实战,我们用rancher搭建了具备master和node的完整K8S环境,但是目前还不能通过kubectl工具在K8S环境做更多的操作,本章我们来实战安装和配置kubectl工具;kubectl工具安装在哪里?kubectl是个客户端工具,可以安装在任意一台Linux、windows或者Mac电脑上,只要这个...原创 2018-06-26 17:12:23 · 207 阅读 · 0 评论 -
CentOS7环境安装Kubernetes四部曲之一:标准化机器准备
通过Rancher安装Kubernetes的文章前面已经写过,但那时是需要科学上网才能安装成功(下载gcr.io/google_containers/XXXXX的镜像),本次实战依旧是用Rancher来安装Kubernetes,但是会做一些设置,使得不用翻墙也能成功安装K8S环境,另外,在CentOS7环境下,有些设置如果处理不当也会导致安装失败或者加入节点失败,所以也会在本文中交代清楚;章节列表...原创 2018-06-26 17:07:08 · 314 阅读 · 0 评论 -
CentOS7环境安装Kubernetes四部曲之二:配置模板和安装master
我们把机器准备好了,并且做了必要的设置,现在我们用这些机器来接着安装kubernetes;安装rancher在master机器执行以下命令,即可安装rancher:docker run -d --restart always --name rancher-server -p 8080:8080 rancher/server:v1.6.11-rc3 && docker logs -f...原创 2018-06-26 17:05:50 · 137 阅读 · 0 评论 -
Docker下RabbitMQ四部曲之三:细说java开发
本文是《Docker下RabbitMQ四部曲》系列的第三篇,实战两个基于SpringBoot的工程,分别用来生产和消费RabbitMQ消息;本文内容简述今天的实战由以下几部分组成: 1. 开发SpringBoot工程rabbitmqproducer,用来生产消息; 2. 分析docker-compose.yml中对rabbitmqproducer镜像的使用; 3. 开发SpringBoot工程ra...原创 2018-06-27 09:53:11 · 221 阅读 · 0 评论 -
Docker下RabbitMQ四部曲之四:高可用实战
本章是《Docker下RabbitMQ四部曲》系列的终篇,今天的我们一起来体验Rabbit’MQ集群的高可用能力,看看RabbitMQ集群中的部分节点宕机时,是否还能生产和消费消息;实战概要今天实战的步骤如下: 1. 制作docker-compose.yml文件,为每个容器配置好参数; 2. 启动所有容器,包括RabbitMQ集群、消息生产者的web应用、消息消费者的web应用; 3. 逐个停止集...原创 2018-06-27 09:55:30 · 2638 阅读 · 1 评论 -
kubeadm搭建kubernetes集群之一:构建标准化镜像
使用docker可以批量管理多个容器,但都是在同一台电脑内进行的,这在实际生产环境中是不够用的,如何突破单机的限制?让多个电脑上的容器可以像单机上的docker-compose.yml管理的那样方便呢?kubernetes是个不错的选择,今天我们就来一起实战kubernetes集群环境的搭建吧。前提条件由于要用到谷歌的服务,所以要求您的网络环境可以科学上网,具体的方案就不在这里说了;用于实战的本地...原创 2018-06-27 10:00:17 · 469 阅读 · 0 评论 -
解决docker 无法释放端口的问题
今天遇到一个非常奇葩的情况就是当更新完docker镜像后,运行docker-compose up -d 出现了Bind for 0.0.0.0:xxxx failed: port is already allocated 的情况,通过netstat -ap | grep xxxx 之后发现时docker的某个进程一直占用这个端口而导致服务无法重新启动。通过一系列的解决方法:比如kill进程,重...原创 2019-01-16 15:59:44 · 2815 阅读 · 0 评论 -
Dockerfile 时区设置及 Java 时区设置(/etc/localtime和/etc/timezone)
注意,总共有两个文件要修改,修改/etc/localtime使本地时间正确(对应linux的date指令正确),另外还需要修改/etc/timezone使得时区正确(对应Java时间正确)Dockerfile 时区设置RUN ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtimeRUN echo 'Asia/Shangh...原创 2018-12-05 22:53:26 · 908 阅读 · 0 评论 -
Docker的web端管理平台对比(DockerUI 、Shipyard、Portainer、Daocloud)
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq273681448/article/details/75007828 前言最近,为了方便对命令行过敏的测试或开发人员,我决定部署一个可视化的管理平台来管理dock...原创 2018-11-15 11:33:46 · 224 阅读 · 0 评论 -
Docker实战(九):Docker安装ELK环境
Docker安装ELK环境ELK实际上就是ElasticSearch,Logstash,Kibana的缩写,是日志收集分析的一种解决方案。Elasticsearch一个开源的搜索引擎框架(支持群集架构方式)Logstash集成各种收集日志插件,还是一个比较优秀的正则切割日志工具Kibana一个免费的web应用,支持在web端查看ES的搜索结...原创 2018-11-10 01:27:56 · 520 阅读 · 0 评论 -
使用Docker快速部署ELK环境(最新5.5.1版本)
在Linux服务器上安装Docker以后,Pull相关的官方Docker镜像:docker pull docker.elastic.co/elasticsearch/elasticsearch:5.5.1docker pull docker.elastic.co/kibana/kibana:5.5.1docker pull docker.elastic.co/logstash/logstas...原创 2018-11-10 01:24:19 · 613 阅读 · 0 评论 -
CentOS7环境安装Kubernetes四部曲之三:添加节点
机器信息整个环境由两台CentOS7的机器组成,如下:hostnameIP地址作用内存大小master192.168.119.129主控制节点2Gnode1192.168.119.130业务节点4G将机器加入到K8S环境master机器的IP是192.168.119.129,所以在浏览器打开地址192.168.119.129:8080,左上角选择我们在上一章新增的环境,可以看到如下图的页面,点击红...原创 2018-06-27 10:25:35 · 184 阅读 · 0 评论 -
kubeadm搭建kubernetes集群之三:加入node节点
我们把kubernetes的master节点搭建好了,本章我们将加入node节点,使得整个环境可以部署应用;前提条件由于要用到谷歌的服务,所以要求您的网络环境可以科学上网,具体的方案就不在这里说了;复制文件如下图所示,cent7是我们上一章操作完成后对应的CentOS7的VMware文件夹,node1、node2都是直接复制cent7文件夹再粘贴生成的;启动请参照《kubeadm搭建kuberne...原创 2018-06-27 10:02:59 · 1022 阅读 · 1 评论 -
kubeadm搭建kubernetes集群之二:创建master节点
我们用VMware安装了一个CentOS7虚拟机,并且打算用这个虚拟机的镜像文件作为后续整个kubernetes的标准化镜像,现在我们就以这个镜像为基础,开始安装kubernetes集群吧;前提条件由于要用到谷歌的服务,所以要求您的网络环境可以科学上网,具体的方案就不在这里说了;复制文件如下图所示,cent7是我们上一章操作完成后对应的CentOS7的VMware文件夹,现在把这个文件夹复制三份一...原创 2018-06-27 10:01:07 · 721 阅读 · 0 评论 -
实战maven私有仓库三部曲之三:Docker下搭建maven私有仓库
在前两章中,我们先在linux搭建maven私有仓库,然后在开发环境使用此仓库,本章我们在docker下快速搭建maven私有仓库,然后像前面章节的实战一样使用它;实战环境本次实战的环境是Ubuntu16,安装的Docker版本是17.03.2-ce;本次用到的二方库工程mvnDemoLib,和《实战maven私有仓库三部曲之二:上传到私有仓库》中用到的mvnDemoLib是同一个,源码的git地...原创 2018-06-25 16:49:20 · 225 阅读 · 0 评论 -
Docker Compose:链接外部容器的几种方式
容器之间的链接是一种很常见的操作:它提供了访问其中的某个容器的网络服务而不需要将所需的端口暴露给Docker Host主机的功能。Docker Compose中对该特性的支持同样是很方便的。然而,如果需要链接的容器没有定义在同一个 docker-compose.yml 中的时候,这个时候就稍微麻烦复杂了点。在Docker中,容器之间的链接是一种很常见的操作:它提供了访问其中原创 2018-03-03 22:28:56 · 9288 阅读 · 0 评论 -
Centos7中docker开启远程访问(Centos7 docker remote access configure)
首先,centos中docker的配置不同于ubuntu,在centos中没有/etc/default/docker,另外在centos7中也没有找到/etc/sysconfig/docke这个配置文件。参考了网上的文章,配置好了centos7的docker远程访问,配置过程如下。在作为docker远程服务的centos7机器中配置:1、在/usr/lib/sy原创 2018-03-03 22:26:57 · 580 阅读 · 0 评论 -
Centos系统下docker的安装与卸载
Docker简介Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化。容器是完全使用沙箱机制,相互之间不会有任何接口(类似 iPhone 的 app)。几乎没有性能开销,可以很容易地在机器和数据中心中运行。最重要的是,他们不依赖于任何语言、框架包括系统。 百度百科前提原创 2018-03-03 22:23:47 · 194 阅读 · 0 评论 -
使用Docker快速部署ELK环境(最新5.5.1版本)
在Linux服务器上安装Docker以后,Pull相关的官方Docker镜像:docker pull docker.elastic.co/elasticsearch/elasticsearch:5.5.1docker pull docker.elastic.co/kibana/kibana:5.5.1docker pull docker.elastic.co/logstash/logsta原创 2018-02-23 23:22:58 · 258 阅读 · 0 评论 -
Docker命令快速参考
1、基本语法 docker [OPTION] COMMAND [arg...][plain] view plain copy$ docker Usage: docker [OPTIONS] COMMAND [arg...] docker daemon [ --help | ... ]原创 2018-02-14 14:28:36 · 164 阅读 · 0 评论 -
Docker镜像保存为文件及从文件导入镜像
1、概述 我们制作好镜像后,有时需要将镜像复制到另一台服务器使用。 能达到以上目的有两种方式,一种是上传镜像到仓库中(本地或公共仓库),但是另一台服务器很肯能只是与当前服务器局域网想通而没有公网的,所以如果使用仓库的方式,只能自己搭建私有仓库,这会在另一篇文章中介绍。 如果我们仅仅是要复制到另外少数的服务器,搭建私有仓库显然没有这个必要,而将镜像保存为文件原创 2018-02-14 14:27:11 · 156 阅读 · 0 评论 -
Docker基础教程——Dockerfile
Dockerfile是一个文本格式的配置文件,我们可以使用Dockerfile文件快速创建自定义的镜像。 Dockerfile支持的众多指令是本文主要要介绍的内容,之后会给出一个基本示例。 一般而言,Docker分为4部分:基础镜像信息、维护者信息、镜像操作指令和容器启动时的执行命令。 并且支持以#开头的注释行。1、指令 指令的一半格原创 2018-02-14 14:26:05 · 264 阅读 · 0 评论 -
Docker基础教程——网络基础配置
1、端口映射 从外部访问容器应用 启动容器时,如果不知道对应参数,在容器外部是无法通过网络访问容器内部的。 可以通过-p或-P参数指定端口映射。 使用-P时,Docker会随机映射一个49000~49900的端口到容器内部开放的端口。 -p会映射到指定的端口,支持的格式:ip地址:主机端口:容器端口ip地址::容原创 2018-02-14 14:24:21 · 133 阅读 · 0 评论 -
Docker基础教程——数据管理
我们在使用docker 的时候,会产生很多数据,比如web服务器啊,数据库之类的,有时我们还需要备份或复制这些数据,这就需要涉及到Docker的数据管理了。 docker容器中管理数据主要分两种:数据卷数据卷容器1、数据卷 数据卷是一个可供容器使用的特殊目录,它会绕过文件系统,可以提供很多有用的特性:数据卷可以在容器之间共原创 2018-02-14 14:11:41 · 132 阅读 · 0 评论 -
Docker基础教程——仓库
仓库是集中存放镜像的地方。 首先说下注册服务器,注册服务器实际上是存放仓库的具体服务器,每个服务器通常会有多个仓库,而每个仓库下又有多个镜像。 比如仓库地址:dl.dockerpool.com/ubuntu,dl.dockerpool.com是注册服务器,ubuntu是仓库名。 其中仓库分共有仓库和私有仓库。 1、Docker Hub原创 2018-02-14 14:09:53 · 128 阅读 · 0 评论 -
Docker基础教程——容器
容器是Docker的另一个核心概念。 一般来说,镜像的一个运行实例就是容器,容器提供了一个可写的文件层。 本文同上一篇介绍镜像一样的结构,逐步介绍容器。 1、创建容器 Docker的容器非常轻量级,创建和删除都很容易。 1.1、新建容器 新建容器使用docker create命令:[plai原创 2018-02-14 14:09:01 · 144 阅读 · 0 评论 -
Docker基础教程——镜像
Docker运行容器前需要本地存在对应的镜像,如果本地不存在,会尝试从默认(Docker Hub)的镜像仓库获取,也可以配置使用自定义的镜像仓库。 1、获取镜像 镜像是Docker的基础,运行容器的前提。 可以使用命令从网络上下载镜像,命令如下(如果不是Root用户需要在命令前加上sudo命令):[plain] view pla原创 2018-02-14 14:06:37 · 193 阅读 · 0 评论 -
Docker基础教程——介绍及核心概念
1、介绍 额,介绍我就拉一段百科吧。 Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化。容器是完全使用沙箱机制,相互之间不会有任何接口。 Docker是基于Go语言实现的,诞生于13年,Docker相对于虚拟机是更为轻量级的解决方案,在开发和运维过程原创 2018-02-14 14:04:23 · 152 阅读 · 0 评论 -
Docker管理工具-Swarm部署记录
Swarm介绍Swarm是Docker公司在2014年12月初发布的一套较为简单的工具,用来管理Docker集群,它将一群Docker宿主机变成一个单一的,虚拟的主机。Swarm使用标准的Docker API接口作为其前端访问入口,换言之,各种形式的Docker Client(docker client in Go, docker_py, docker等)均可以直接与Swarm通信。Swa原创 2018-03-25 22:50:10 · 956 阅读 · 0 评论 -
Docker Swarm
Swarm 在 Docker 1.12 版本之前属于一个独立的项目,在 Docker 1.12 版本发布之后,该项目合并到了 Docker 中,成为 Docker 的一个子命令。目前,Swarm 是 Docker 社区提供的唯一一个原生支持 Docker 集群管理的工具。它可以把多个 Docker 主机组成的系统转换为单一的虚拟 Docker 主机,使得容器可以组成跨主机的子网网络。1.原创 2018-03-25 22:56:34 · 136 阅读 · 0 评论 -
Docker Swarm运行Spring Cloud应用(二):Eureka高可用
基础服务独立部署把所有服务一次性部署好非常方便,但是在生产环境中使用的时候需要考虑这样一些因素:在生产环境中的基础服务,如Eureka由于更新不频繁,应该和频繁更新应用服务分开部署作为基础服务的Eureka需要考虑高可用我们可以把部署描述文件分成两部分,eureka.yml 用来部署作为基础服务的Eureka Server,是包含三各节点的集群。eureka.yml转载 2018-03-25 23:00:55 · 1482 阅读 · 1 评论 -
实战maven私有仓库三部曲之一:搭建和使用
在局域网内搭建maven私有仓库,可避免每次都从中央仓库下载公共jar包,另外将A模块作为二方库发布到私有仓库后,B模块可以很方便的引用,今天我们就来实战maven私有仓库的搭建和使用;环境信息安装私有仓库的机器是ubuntu16,IP是192.168.119.155;maven私有仓库的软件是nexus-2.14.5,请在官网下载;在window10环境上做验证的使用,用到的maven版本是3....原创 2018-06-25 16:46:16 · 267 阅读 · 0 评论