SpringCloud项目自动部署到docker里

微服务部署有两种方法

1.手动部署:

首先基于源码打包生成jar包(或war包),将jar包(或war包)上传至虚 拟机并拷贝至JDK容器

2.通过Maven插件自动部署:

对于数量众多的微服务,手动部署无疑是非常麻烦的做法,并且容易出错。所以我们这 里学习如何自动部署,这也是企业实际开发中经常使用的方法

Maven插件自动部署步骤:

(1)修改宿主机的docker配置,让其可以远程访问

执行:
vi /lib/systemd/system/docker.service
其中ExecStart=后添加配置
-H tcp://0.0.0.0:2375 -H unix:///var/run/docker.sock

在这里插入图片描述

2)刷新配置,重启服务
	systemctl daemon‐reload  
	systemctl restart docker  
	docker start registry
(3)在你的微服务工程pom.xml 增加配置

代码如下

<build> 
		<finalName>app</finalName>
			 <plugins> 
				 <plugin> 
					 <groupId>org.springframework.boot</groupId> 
					 <artifactId>spring-boot-maven-plugin</artifactId> 
				 </plugin> 
				 <!-- docker的maven插件,官网: https://github.com/spotify/docker-maven-plugin -->
				 <plugin> 
					 <groupId>com.spotify</groupId> 
					 <artifactId>docker-maven-plugin</artifactId> 
					 <version>0.4.13</version> 
					 <configuration> 
						 <imageName>192.168.53.132:5000/${project.artifactId}:${project.version}</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> 
						 <dockerHost>http://192.168.53.132:2375</dockerHost> 
					 </configuration> 
				 </plugin> 
			 </plugins> 
	 </build>

(4)以上配置会自动生成Dockerfile

FROM jdk1.8
ADD app.jar /
ENTRYPOINT [“java”,"-jar","/app.jar"]

(5)在windows的命令提示符下,进入微服务工程所在的目录,输入以下 命令,进行打包和上传镜像

mvn clean package docker:build -DpushImage

浏览器访问
http://192.168.53.132:5000/v2/_catalog
输出
{“repositories”:[“astronomy_eureka”]}

(6)进入宿主机 , 查看镜像

docker images

(7) 启动容器:

docker run -d --name=eureka -p 6868:6868 192.168.184.135:5000/astronomy_eureka:1.0.0‐SNAPSHOT

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值