docker安装:https://blog.csdn.net/qq_35314762/article/details/82078113
项目源码:https://download.csdn.net/download/qq_35314762/10620850
1.在所有项目的pom文件中添加maven插件
<!-- tag::plugin[] -->
<plugin>
<groupId>com.spotify</groupId>
<artifactId>docker-maven-plugin</artifactId>
<version>1.0.0</version>
<configuration>
<imageName>${docker.image.prefix}/${project.artifactId}</imageName>
<baseImage>java</baseImage>
<entryPoint>["java", "-jar", "/${project.build.finalName}.jar"]</entryPoint>
<resources>
<resource>
<targetPath>/</targetPath>
<directory>${project.build.directory}</directory>
<include>${project.build.finalName}.jar</include>
</resource>
</resources>
</configuration>
</plugin>
<!-- end::plugin[] -->
2.修改eureka地址
eureka.client.serviceUrl.defaultZone=http://eureka-server:8761/eureka/
3.使用构建命令,构建docker镜像
clean package docker:build -DskipTests
4.启动测试
启动注册中心
docker run –name eureka-server -p 8761:8761 -t dan/eureka-server
启动服务提供者
docker run –link eureka-server:8761 –name spring-cloud-user-provider -p 9999:9999 -t dan/spring-cloud-user-provider
启动服务消费者
docker run –link eureka-server:8761 –link spring-cloud-user-provider:9999 -p 8763:8763 -t dan/spring-boot-cloud-user-customer
访问:http://192.168.99.100:8761
http://192.168.99.100:9999/findById/1
一般微服务架构会包含若干个微服务,而每个微服务可以有多个实例,如果每个微服务都有手动启停,那么效率就很低、维护量比较大。通过docker run命令的方式启动多个容器的时候还是比较繁琐的,几十上百个微服务节点要通过docker run方式来启动的话,估计再好的运维人员也有敲错命令的时候。
所以我们可以使用Docker Compose来轻松、高效地管理容器。
请参考下一篇博客。