摆置微服务,总是java -jar server.jar,显得太low。docker助力下吧,不料倒腾良久。。。
一、项目地址
- 新窗口打开下边链接,请按住ctrl键
- github/mall/server
二、注意事项
- 主要是两个配置文件:application.yml 和 docker-compose.yml
- 集群配置之简化配置
- defaultZone配置: http://slave1:8761/eureka/,http://slave2:8762/eureka/,http://slave3:8763/eureka/
- docker-compose.yml配置:services 中的 server 名字要对应上边的 slave1 / slave2 / slave3
application.yml
spring:
application:
name: mall-server
eureka:
# 关闭自我保护模式
# eureka.server.enable-self-preservation: false
client:
healthcheck:
enabled: true
service-url:
defaultZone: http://slave1:8761/eureka/,http://slave2:8762/eureka/,http://slave3:8763/eureka/
info:
app:
name: ${spring.application.name}
description: Eureka 注册中心
version: 1.0.0
---
spring:
profiles:
slave1
server:
port: 8761
eureka:
instance:
hostname: slave1
---
spring:
profiles:
slave2
server:
port: 8762
eureka:
instance:
hostname: slave2
---
spring:
profiles:
slave3
server:
port: 8763
eureka:
instance:
hostname: slave3
docker-compose.yml
version: '3.5'
services:
slave1:
container_name: s1
image: mall/server:1.0.0
networks:
- mall-server-net
ports:
- 8761:8761
environment:
- SPRING_PROFILES_ACTIVE=slave1
slave2:
container_name: s2
image: mall/server:1.0.0
networks:
- mall-server-net
ports:
- 8762:8762
environment:
- SPRING_PROFILES_ACTIVE=slave2
slave3:
container_name: s3
image: mall/server:1.0.0
networks:
- mall-server-net
ports:
- 8763:8763
environment:
- SPRING_PROFILES_ACTIVE=slave3
networks:
mall-server-net:
name: mall-server-net
driver: bridge