微服务迁移记(七):使用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:\xxx\zyproject-parent\zyproject-common\pom.xml to C:\Users\xx\.m2\repository\com\xxx\zyproject-common\1.0-SNAPSHOT\zyproject-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可以看到三个服务都注册成功:

 

posted on 2020-03-20 16:58  zhouyu  阅读(232)  评论(0编辑  收藏  举报

导航