zoukankan      html  css  js  c++  java
  • 微服务迁移记(七):使用docker发布 springcloud应用续-发布service及web两个工程

    上篇文章,发布分布式配置中心,参考《微服务迁移记(七):使用docker发布 springcloud应用》,发布以后可以通过:http://192.168.0.12:8000/actuator/health 访问服务健康状况。

    今天在单位,利用中午休息时间,将服务实现层(相当于provider)和web层(相当于consumer)发布至虚拟机服务器。公司环境略有变化,每个项目下新增bootstrap-sit.yml,并设置spring.profiles.active = sit

    一、环境介绍

    虚拟机IP地址:192.168.202.102

    consul:http://192.168.202.102:8500/

    config:http://192.168.0.12:8000

    redis:192.168.202.102 6379

    计划将服务实现工程发布至9000端口,WEB工程发布至8080端口。

    二、非发布工程发布至本地仓库

    zyproject-common工程:公共类库,提供通用返回、分页类等。

    zyproject-api-service工程:主要定义接口,供服务实现层和web层引用。

    这两个工程平时调试时直接引用就可以了,发布出去的时候需要把jar包引用到相应的工程里。所以我们这里将两个工程先发布至本地仓库:

    执行mvn clean install或点击相应的操作按钮:

    成功后,会有一行日志提示发布本地仓库的位置如:

    [INFO] Installing D:xxxzyproject-parentzyproject-commonpom.xml to C:Usersxx.m2
    epositorycomxxxzyproject-common1.0-SNAPSHOTzyproject-common-1.0-SNAPSHOT.pom

    相应目录下可以看到已生成相应的jar包。

    三、服务实现工程发布

    服务工程参考《微服务迁移记(四):公共层、接口层和实现层搭建

    1. pom配置

    <!--docker-->
        <build>
            <plugins>
                <plugin>
                    <groupId>org.springframework.boot</groupId>
                    <artifactId>spring-boot-maven-plugin</artifactId>
                </plugin>
                <plugin>
                    <groupId>com.spotify</groupId>
                    <artifactId>docker-maven-plugin</artifactId>
                </plugin>
            </plugins>
        </build>

    2. Dockerfile

    FROM java:8
    ENV PROFILE prd
    ADD target/*.jar /home/app/system-service.jar
    EXPOSE 9000
    ENTRYPOINT java ${JAVA_OPTS} -Djava.security.edg=file:/dev/./urandom -Duser.timezone=Asia/Shanghai -Dfile.encoding=UTF-8 -Dspring.profile.active=${PROFILE} -jar /home/app/system-service.jar

    3.新建发布项,点击发布后成功运行。访问:http://192.168.202.102:9000/actuator/health成功

     

    四、WEB工程发布

    1. pom配置

    同服务实现层。

    2. Dockerfile

    FROM java:8
    ADD target/*.jar /home/app/web/zy-web.jar
    EXPOSE 8080
    ENTRYPOINT java ${JAVA_OPTS} -Djava.security.egd=file:/dev/./urandom -Duser.timezone=Asia/Shanghai -Dfile.encoding=UTF-8 -Dspring.profile.active=${PROFILE} -jar /home/app/web/zy-web.jar

    3.新建发布项,发布成功后,访问:http://192.168.202.102:8080/manage跳转至登录界面。

    服务全部发布完成后,在consul可以看到三个服务都注册成功:

  • 相关阅读:
    Windows Server 2012 两台服务器文件同步
    Linux下非root用户运行Tomcat
    Linux离线安装mysql 5.6详细步骤
    spring再学习之整合JDBC
    spring再学习之AOP实操
    spring再学习之AOP准备
    spring再学习之注解
    spring再学习之配置详解
    spring再学习之基本概念
    spring再学习之简单测试
  • 原文地址:https://www.cnblogs.com/zhouyu629/p/12532358.html
Copyright © 2011-2022 走看看