先确保工程能够正常访问(参考博主SpringCloud专栏)
http://eureka2001.javaxl.com:2001/
http://localhost:1005/student/list
以这五个部署为例
idea中springcloud项目打jar包
1.在idea运行springcloud项目,不报错,均可正常访问
2.修改主模块的pom
<version>0.0.1-SNAPSHOT</version>
<!-- 1.注意更改为pom而不是jar -->
<!--
<packaging>jar</packaging>
-->
<packaging>pom</packaging>
<!-- 2.主模块不要配置插件 -->
<build></build>
3.在各个子module模块的pom.xml文件中添加插件依赖
<build> <plugins> <!--添加maven插件--> <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> <configuration> <!--添加自己的启动类路径!--> <mainClass>com.javaxl.microservicestudentproviderhystrix.MicroserviceStudentProviderHystrixApplication</mainClass> </configuration> <executions> <execution> <goals> <!--可以把依赖的包都打包到生成的Jar包中--> <goal>repackage</goal> </goals> </execution> </executions> </plugin> </plugins> </build>
4.点击idea的view ——》Tool windows ——》maven projects
先双击clean(去掉之前打的包target文件夹)——》再创建install
5.将项目各子模块target目录下的jar包,复制到指定目录,例如:d:\temp\apps目录下,再通过java命令直接运行
cmd
d:
cd d:\temp\apps
java -jar *.jar --spring.profiles.active=xxx
例如:
java -jar microservice-eureka-server.jar --spring.profiles.active=eureka2001 java -jar microservice-eureka-server.jar --spring.profiles.active=eureka2002 java -jar microservice-student-provider-hystrix.jar --spring.profiles.active=provider-hystrix-1005 java -jar microservice-student-provider-hystrix.jar --spring.profiles.active=provider-hystrix-1006 java -jar microservice-student-consumer-feign-80.jar
注意:这些命令先到window下的cmd窗口运行下测试,再到Docker上去部署
docker部署springcloud
1.宿主机修改hosts文件
vim /etc/hosts
## 在里面添加要映射的域名即可
127.0.0.1 eureka2001.javaxl.com
127.0.0.1 eureka2002.javaxl.com
2.宿主机创建文件夹apps,rz上传eureka-server-cluster.jar包至apps
## 此目录稍后作为数据卷,在宿主机和容器之间共享数据
mkdir /apps
3.使用jre:8镜像启动容器,并挂载指定目录为数据卷
docker run -d \
-it \
--net=host \
--name eureka-server-peer1 \
--mount type=bind,source=/javaxl_docker/apps,target=/javaxl_docker/apps \
镜像ID
注1:jre:8是自定义镜像,已安装jre1.8
4.进入容器,java命令启动微服务
docker exec -it eureka-server-peer1 /bin/sh
java -jar microservice-eureka-server.jar --spring.profiles.active=eureka2001
注1:同理可以启动eureka-server-peer2
注2:docker start $(docker ps -aq)
测试:
over......
备案号:湘ICP备19000029号
Copyright © 2018-2019 javaxl晓码阁 版权所有