借助容器技术,可以方便的在不同环境下部署服务,保证服务环境的一致性.docker swarm这个东西,可以方便的对容器进行编排管理. docker swarm集群中,有manager节点与worker节点. 在工作项目中,需要在此集群新增一台机器,用于部署刚上线的服务.对于新上线的服务,需要先在这台机器上运行一段时间.稳定一段时间之后,再去除此限制,服务可以随机部署到一台生产的机器上. 首先介绍一下在一个集群中新增work机器的操作: 登录docker swarm的一个管理节点,运行: [roo…
一.准备docker swarm的集群环境 ip 是否主节点   192.168.91.13 是   192.168.91.43 否   二.准备微服务 ①eureka服务 application.yml配置 server: port: eureka: client: register-with-eureka: false fetch-registry: false service-url: defaultZone: http://localhost:8761/eureka instance:…
1.前言 转眼间surging 开源已经有1年了,经过1年的打磨,surging已从最初在window 部署的分布式微服务框架,到现在的可以在docker部署利用rancher 进行服务编排的分布式微服务引擎,再把业务进行剥离, 通过配置路径就能驱动加载业务模块,这样的细粒度设计,能更加灵活从业务中针对于对象加以细分,能更加灵活的拆分聚合服务.而这篇文章我们来谈谈基于docker 如何部署 surging源码下载 2.概述 容器,就是用来存放镜像的器皿,而镜像是构建成的一个轻量的.独立的.可执行…
一.Swarm简介 Swarm是Docker的一个编排工具,参考官网:https://docs.docker.com/engine/swarm/ Swarm 模式简介 要在Swarm模式下运行docker,需要先安装docker,参考安装教程 当前版本的docker包含了swarm模式,用于管理docker集群.可以使用命令行来创建swarm集群,部署应用,管理swarm的行为. 如果你使用低于1.12.0版本的docker,可以使用独立模式的是swarm,但是建议使用最新版本 特性 与dock…
本文首先从Dockerfile创建了一个简单web镜像 然后将web镜像推送到了远程仓库,以备后面集群中不同机器自动下载 之后使用docker-compose.yml配置了一个应用 而后新建了2台虚拟机作为swarm节点,并部署应用的5个实例在这两台虚拟机上 最后还讲了如何如果更改集群配置.如何扩容您的集群和如重新发布您的应用 一.创建一个简单web镜像,并推送到docker仓库 1.创建Dockerfile 创建一个空目录, 然后CD到新目录,创建名为Dockerfile的文件,将以下内容复制…
环境 基于上一节的env/server:v0.1, env/worker:v0.1镜像, 在基于debian8.2的两台机器上测试部署docker swarm. docker service部署 ➜ ~ docker service create --replicas --name server -e APP_PORT= --network docker-net --publish : env/server:v0. image env/server:v0. could not be access…
场景 Docker-Compose简介与Ubuntu Server 上安装Compose: https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/100902301 Docker Compose基本使用-使用Compose启动Tomcat为例: https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/100904080 Docker Compose部署项目到容器-基于Tomc…
1,首先说明一下我的环境,我刚开始是用的XAMPP这个集成的软件,里面安装了apache, mysql,tomcat这些软件,然后通过控制面板对其进行启动关闭的操作,这些操作很方便,但是我就用net start mysql,这时出现了“服务名无效” 问题原因:mysql服务没有安装. 解决办法: 在 mysql bin目录下 以管理员的权限 执行 mysqld -install命令 然后我进到bin\目录里面,执行了如下命令,然后就可以了 然后就可以开启和关闭服务了 2,注意,net start…
1,首先说明一下我的环境,我刚开始是用的XAMPP这个集成的软件,里面安装了apache, mysql,tomcat这些软件,然后通过控制面板对其进行启动关闭的操作,这些操作很方便,但是我就用net start mysql,这时出现了“服务名无效” 问题原因:mysql服务没有安装. 解决办法: 在 mysql bin目录下 以管理员的权限 执行 mysqld -install命令 然后我进到bin\目录里面,执行了如下命令,然后就可以了 然后就可以开启和关闭服务了 2,注意,net start…
一开始搭建的是没有问题,能够正常启动和访问,然后吃了个饭回来就变成只能启动,浏览器访问不了了. 说真的,这是一个常识问题.使用node搭建服务访问本地文件,服务搭建的没有问题,能够正常启动.但是在浏览器上却显示无法访问到本地页面. 原因可能有很多种,但是比较低级的一种就是:是不是不记得自己的电脑IP地址设置的是自动获取啊......晕死. IP如果是自动获取,那么IP地址是从DHCP中随机分配给电脑的.如果断线再连接也是会重新分配的,于是IP地址就会改变了.你访问不了是因为你本地ip改变了. 解…
容器和宿主机时间不同步问题? 将本地时间复制到docker容器内的etc文件夹下即可 docker cp /etc/localtime scrapy_8:/etc/ 启动crontab错误? 报错: Failed to get D-Bus connection: Operation not permission docker run -d --privileged=: -it centos-python3:1.1 /usr/sbin/init docker和本地之间的文件复制 将docker内文…
系统centos7 docker版本: 解决方法: 在docker run中加入 --privileged=true  给容器加上特定权限,如下 docker run --privileged=true -p 3306:3306 --name mymysql -v $PWD/conf:/etc/mysql/conf.d -v $PWD/logs:/logs -v $PWD/data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=123456 -d  mysql:5.…
这是第一次出勤部署产品.遇到不可控问题,解决,写个心得.记录一下吧^^ 在排查问题的过程中,学到不少知识. (1)centos系统盘和数据盘分开,装操作系统的人没有将IT的空间分配出来,所以分区,自动挂载 #lvmdiskscan 查看哪些设备成为了物理卷. 检测硬盘和分区中的逻辑巻管理信息 只有/dev/sda*,说明只有一个物理卷,其余的是/dev/ram* fdisk /dev/sdb d n p 1 w 即可删除分区,创建一个新的磁盘. 格式化:mkfs.ext4 /dev/sdb1 查…
查看slaver1/2的logs,发现 FATAL org.apache.hadoop.hdfs.server.datanode.DataNode: Initialization failed for block pool Block pool <registering> (Datanode Uuid unassigned) service to localhost/127.0.0.1:9000java.io.IOException: Incompatible clusterIDs in /u…
Docker 容器部署 Consul 集群 一.docker安装与启动1.1安装docker[root@localhost /]# yum -y install docker-io 1.2更改配置文件[root@localhost /]# vi /etc/sysconfig/dockerother-args列更改为:other_args="--exec-driver=lxc --selinux-enabled" 1.3启动docker服务[root@localhost /]# serv…
Docker 是一种新型的虚拟化技术,它的目标在于实现轻量级操作系统的虚拟化.相比传统的虚拟化方案,Docker 虚拟化技术有一些很明显的优势:启动容器的速度明显快于传统虚拟化技术,同时创建一台虚拟机占用的资源也要远远小于传统的虚拟技术.Swarm 是 Docker 集群化的技术,而 Swarm 集群化 Docker 离不开服务发现.Consul 能够解决 Swarm 的服务发现问题.本文将介绍 Swarm 如何使用 Consul 作为服务发现. Docker Swarm 服务发现 Docker…
微服务架构是当前很热门的一个概念,它不是凭空产生的,是技术发展的必然结果.虽然微服务架构没有公认的技术标准和规范草案,但业界已经有一些很有影响力的开源微服务架构平台,架构师可以根据公司的技术实力并结合项目的特点来选择某个合适的微服务架构平台,以此稳妥地实施项目的微服务化改造或开发进程. 本文选自<架构解密:从分布式到微服务>. 本文盘点了四种常用的微服务架构方案,分别是ZeroC IceGrid.Spring Cloud.基于消息队列与Docker Swarm. ZeroC IceGrid微服…
目录 微服务的Docker自动化部署 制作JDK1.8的Docker镜像 Docker常用命令介绍 制作image的一般流程 将本地的image上传至私人仓库 使用Maven插件实现自动化docker部署 微服务的Docker自动化部署 如何将一个微服务打包成一个可以独立运行的Docker镜像呢?需要完成两个任务: (1)JDK环境的Docker化 (2)微服务的Docker化 制作JDK1.8的Docker镜像 Docker常用命令介绍 (1)查看Docker本地仓库中已经下载好的镜像 doc…
很久不看docker的东西了,之前了解的一些基本命令都忘得差不多了,适逢工作需要,再来复习巩固下.今天想完成的是:借助docker不部署下自己的服务. 环境准备 都说“巧妇难为无米之炊”,所以还是需要先准备下的. OS:Ubuntu 16.04, 2G内存 docker:1.13.2 coding language: golang (gin web framework) 编码 将服务跑起来,是我们要完成的第一个步骤,而且是最重要的一个步骤.所以这一步需要仔细调试,为了方便,我就写的简单点. ap…
之前介绍了Docker集群管理工具-Kubernetes部署记录,下面介绍另一个管理工具Swarm的用法,Swarm是Docker原生的集群管理软件,与Kubernetes比起来比较简单. Swarm介绍 Swarm这个项目名称特别贴切.在Wiki的解释中,Swarm behavior是指动物的群集行为.比如我们常见的蜂群,鱼群,秋天往南飞的雁群都可以称作Swarm behavior. Swarm项目正是这样,通过把多个Docker Engine聚集在一起,形成一个大的docker-engine…
背景 之前写过<<docker-compose真香>> 和<docker-compose.docker stack前世今生>两篇博客, 回顾一下思路: ① docker-compose是docker引擎之上的容器编排工具,Python语言编写: docker stack 是docker引擎原生支持的容器编排技术(Go语言) ② 两者都支持最近docker-compose.yml 版本3容器编排定义文件,部分指令有差异. 昨天生产环境 .NetCore程序突然爆出错误(1…
一.什么是Docker Swarm Swarm是Docker公司推出的用来管理docker集群的平台,几乎全部用GO语言来完成的开发的,代码开源在https://github.com/docker/swarm, 它是将一群Docker宿主机变成一个单一的虚拟主机,Swarm使用标准的Docker API接口作为其前端的访问入口,换言之,各种形式的Docker Client(compose,docker-py等)均可以直接与Swarm通信,甚至Docker本身都可以很容易的与Swarm集成,这大大…
写在前面的话 至此,docker 的基础知识已经了解的差不多了,接下来就来谈谈对于 docker 容器,我们如何来管理它. docker swarm 在学习 docker swarm 之前,得先知道容器编排工具的作用:提供了基于容器调度和集群的技术,并编排容器之间如何进行交互. docker swarm 不是唯一的容器编排工具,但却是 docker 自带的容器编排工具. 可以看看它的主要结构(图片来自互联网): docker swarm 以集群的形式运行,包括两个角色:Manager 和 wor…
在使用 docker run 命令启动 Docker 容器时,如果需要进行端口映射.目录挂载.网络信息等配置,整条命令将变得非常长,并且由于是一条 shell 命令,修改和复用也不方便.我们在大规模部署容器的时候不可能手动去输入众多的命令,所以需要一些工具来辅助我们实现 docker run 命令的编写,同时实现简单快捷的大规模部署. docker-compose 部署 docker-compose 是一个读取特定格式的 yaml 文件并将其转换为 docker run 命令的工具,它有效的规避…
10 搭建docker swarm集群 10.1 swarm 介绍 Swarm这个项目名称特别贴切.在Wiki的解释中,Swarm behavior是指动物的群集行 为.比如我们常见的蜂群,鱼群,秋天往南飞的雁群都可以称作Swarm behavior. Swarm项目正是这样,通过把多个Docker Engine聚集在一起,形成一个大的docker- engine,对外提供容器的集群服务.同时这个集群对外提供Swarm API(命令,docker engine的命令),用户可以像使用Docker…
准备工作 我本机是macOS,所以我直接安装了docker desktop,其中包含了docker-machine,不用单独安装. 安装docker主机驱动 我在网上很多人提到了使用virtualbox,太重量级了,我安装了xhyve,更轻量级. brew install docker-machine-driver-xhyve 下载boot2docker.iso 如果不安装的话第一次执行docker-machine create 速度会很慢,你懂得哦.所以在github上下载boot2docke…
上一篇:Docker 三剑客之 Docker Compose 阅读目录: Docker Machine 创建 Docker 主机 Docker Swarm 配置集群节点 Docker Service 部署单个集群服务 Docker Stack 部署多个集群服务,以及 GUI 管理页面 docker-machine.docker swarm.docker node.docker service 和 docker stack 常用命令 Docker Swarm 和 Docker Compose 一样…
基础环境,三台虚拟机 172.17.3.70 172.17.3.71 172.17.3.72 系统配置:centos 7,关闭selinux 需要优化的基础配置: [root@sw1 ~]# vim /etc/rc.local ulimit -SHn 65535 modprobe br_netfilter sleep 60 && /sbin/iptables -P FORWARD ACCEPT sleep 15 && docker container prune -f [r…
相关博文: [故障公告]发布 .NET Core 版博客站点引起大量 500 错误 [网站公告].NET Core 版博客站点第二次发布尝试 暴风雨中的 online : .NET Core 版博客站点遭遇的高并发问题进展 抱歉,.NET Core 版博客系统(博客后台除外)的发布给大家带来麻烦了,我们正在一边忙着修各种 bug ,一边排查访问高峰高并发性能问题. 对于发布后遇到的高并发性能问题,我们一点都没去怀疑 .net core ,我们怀疑的是 docker swarm ,怀疑在高并发下…
不得不说php 对云原生有点不够友好,之前用java .net打包docker镜像 一下就ok了,php倒腾了好久才算部署成功. 场景:使用阿里云ack(k8s) 部署采用thinkPHP框架的php项目,并执行php think worker:server -d 开启websocket 服务 ,可以使用一个docker 镜像就能部署好. php 主要使用webdevops/php-nginx:7.4镜像 部署,这个镜像自带nginx和php环境 dokerfile 放在php项目根目录下,do…