栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java > SpringBoot

微服务下 Spring Boot 应用多环境发布

SpringBoot 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

微服务下 Spring Boot 应用多环境发布

说明

解决微服务在多套环境发布的问题,解决开发环境和预发环境切换的问题,支持 N 套开发环境水平扩展。

Spring Boot Dockerfile 通用模板
FROM registry.cn-hangzhou.aliyuncs.com/micro-java/openjdk:8-jre-alpine
MAINTAINER 545544032@qq.com
ENV TZ="Asia/Shanghai" JVM_PARAMS=" " SPRING_PARAMS=" "
ADD target/*.jar /server.jar
EXPOSE 8080
CMD java $JVM_PARAMS -Djava.security.egd=file:/dev/./urandom -jar /server.jar $SPRING_PARAMS

Note:registry.cn-hangzhou.aliyuncs.com/micro-java/openjdk:8-jre-alpine 基于镜像 openjdk:8-jre-alpine,额外安装了工具 curl,用于 docker service 的 health check

开发/测试环境 docker stack 通用模板
version: '3.4'
services:
    "{{ service_name }}":
  image: "{{ registry_url }}/{{ image_name }}:{{ image_version }}"
  environment:
    JVM_PARAMS: "{{ jvm_heap }}"     # 例如: -Xmx800m -Xms800m
    SPRING_PARAMS: " {{ spring_params }}"
  networks:
    - overlay-network
  volumes:
    - type: bind
      source: "/data/spring-boot/{{ service-name }}/application.properties"
      target: /application.properties
  stop_grace_period: 30s 
  deploy:
    replicas: 2
    resources:
      limits:
 memory: "{{ memory_limit }}"# 例如 : 1024MB
    update_config:
      parallelism: 1     
      delay: 0s   
      failure_action: rollback  
      max_failure_ratio: 0      
      order: stop-first
    restart_policy:
      condition: on-failure
      max_attempts: 3
  healthcheck:
    test: "curl 127.0.0.1:8080 || exit 1"
    interval: 3s
    timeout: 5s
    retries: 3
    start_period: 1m

networks:
  overlay-network:
    driver: overlay
    attachable: true

Note:此为 Ansible 中的动态模板,需要先根据环境变量渲染成具体的服务发布时用的 stack.yml 文件


待续。。。

© 著作权归作者所有,转载或内容合作请联系作者

扫码关注

本文由博客一文多发平台 OpenWrite 发布!

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/235595.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号