博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
spring cloud+docker+jenkins 自动化构建(2)
阅读量:6914 次
发布时间:2019-06-27

本文共 3239 字,大约阅读时间需要 10 分钟。

hot3.png

eureka项目作为注册中心,是三个节点peer1,peer2,peer3组成一个集群,之后会将其打包成docker image ,并部署到docker swarm

1.EurekaServerClusterApplication

package com.sm.eurekaservercluster;import org.springframework.boot.SpringApplication;import org.springframework.boot.autoconfigure.SpringBootApplication;import org.springframework.cloud.netflix.eureka.server.EnableEurekaServer;@SpringBootApplication@EnableEurekaServerpublic class EurekaServerClusterApplication {	public static void main(String[] args) {		SpringApplication.run(EurekaServerClusterApplication.class, args);	}}

2.application-dev.yml

eureka:    server:      # 关闭自我保护机制(生产环境不启用)      enable-self-preservation: false      # 每隔10s扫描服务列表,移除失效服务(生产环境不启用)      eviction-interval-timer-in-ms: 10000

3.application-peer1.yml

spring:  profiles: peer1eureka:  instance:    hostname: peer1    instance-id: ${eureka.instance.hostname}:${server.port}  client:    serviceUrl:      defaultZone: http://peer2:8762/eureka/,http://peer3:8763/eureka/server:  port: 8761

4.application-peer2.yml

spring:  profiles: peer2eureka:  instance:    hostname: peer2    instance-id: ${eureka.instance.hostname}:${server.port}  client:    serviceUrl:      defaultZone: http://peer1:8761/eureka/,http://peer3:8763/eureka/server:  port: 8762

5.application-peer3.yml

spring:  profiles: peer3eureka:  instance:    hostname: peer3    instance-id: ${eureka.instance.hostname}:${server.port}  client:    serviceUrl:      defaultZone: http://peer1:8761/eureka/,http://peer2:8762/eureka/server:  port: 8763

6.build.gradle

buildscript {	ext {		springBootVersion = '2.0.1.RELEASE'	}	repositories {		maven { url "http://maven.aliyun.com/nexus/content/groups/public/" }		mavenCentral()	}	dependencies {		classpath("org.springframework.boot:spring-boot-gradle-plugin:${springBootVersion}")		classpath 'com.bmuschko:gradle-docker-plugin:3.2.5'	}}apply plugin: 'java'apply plugin: 'org.springframework.boot'apply plugin: 'io.spring.dependency-management'apply plugin: 'com.bmuschko.docker-remote-api'group = 'com.sm.microservice'version = '2.0.0-SNAPSHOT'sourceCompatibility = 1.8repositories {	maven { url "http://maven.aliyun.com/nexus/content/groups/public/" }	mavenCentral()	maven { url "https://repo.spring.io/milestone" }}ext {	springCloudVersion = 'Finchley.RC1'}dependencies {	compile 'org.springframework.boot:spring-boot-starter-web'	compile 'org.springframework.boot:spring-boot-starter-actuator'	compile 'org.springframework.cloud:spring-cloud-starter-netflix-eureka-server'	testCompile 'org.springframework.boot:spring-boot-starter-test'}dependencyManagement {	imports {		mavenBom "org.springframework.cloud:spring-cloud-dependencies:${springCloudVersion}"	}}import com.bmuschko.gradle.docker.tasks.image.Dockerfileimport com.bmuschko.gradle.docker.tasks.image.DockerBuildImagetask createDockerfile(type: Dockerfile) {    destFile = project.file('Dockerfile')    from 'frekele/java:jdk8'    volume '/tmp'    addFile("build/libs/*.jar",'/app.jar')    entryPoint('java','-Djava.security.egd=file:/dev/./urandom','-jar','/app.jar')}task buildImage(type: DockerBuildImage) {    dependsOn createDockerfile    inputDir = createDockerfile.destFile.parentFile    tag = "sm/eureka:${version}"}

7.部署成功后效果

输入图片说明

转载于:https://my.oschina.net/weidedong/blog/1824736

你可能感兴趣的文章
03C++语言对C的增强——实用性、变量检测、struct类型、C++中所有变量和函数都必须有类型、bool类型、三目运算符...
查看>>
LVM逻辑卷
查看>>
TCP服务器和客户端最大连接数
查看>>
手机端扫描证件识别SDK
查看>>
Java_Utils框架
查看>>
java selenium (六) XPath 定位
查看>>
Java加密算法(八)——数字证书
查看>>
Storm消息容错机制(ack-fail机制)
查看>>
Linux入门
查看>>
Linux 文件与目录结构
查看>>
mysql数据库主从配置的几种方式
查看>>
异或运算的作用
查看>>
web安全测试---AppScan扫描工具
查看>>
分析一个C语言程序生成的汇编代码-《Linux内核分析》Week1作业
查看>>
JavaScript数组操作方法集合(2)
查看>>
android Android SDK Manager遇到的问题
查看>>
RadioButton与监听
查看>>
Android开发技术周报183学习记录
查看>>
移位运算符
查看>>
warning: rpmts_HdrFromFdno: Header V3 RSA/SHA256 Signature, key ID fd431d51: NOKEY
查看>>