部署SpringBoot项目到远程docker容器

微服务由于服务数量众多,容器化部署是目前的主流方案。
1、修改docker配置,开启允许远程访问docker的功能

/usr/lib/systemd/system/docker.service
-H tcp://0.0.0.0:2375  -H unix:///var/run/docker.sock

在这里插入图片描述
2、重启docker
在这里插入图片描述
3、安装docker插件
在这里插入图片描述
4、安装完成之后需要重启一下IDEA
在这里插入图片描述
5、测试接口

@RestController
public class TestDocker {
    @GetMapping("/test")
    public String test() {
        return "远程docker访问成功!!!";
    }
}

6、配置Dockerfile
在项目的根目录下,创建一个Dockerfile,作为镜像的构建文件
在这里插入图片描述

FROM hub.c.163.com/library/java:latest
VOLUME /tmp
ADD target/docker-0.0.1-SNAPSHOT.jar docker.jar
ENTRYPOINT ["java","-jar","/docker.jar"]

a、SpringBoot项目的运行依赖java环境,所以镜像是基于java镜像来构建
b、考虑到docker官方镜像下载较慢,所以这里使用了网易提供的docker镜像加速
c、由于SpringBoot运行时需要tmp目录,所以这里配置一个/tmp目录
d、将本地target目录中打包好的jar文件复制一份新的到/docker.jar
e、最后是配置一下启动命令,由于打包的jar已经成为docker.jar了,所以启动命令是启动docker.jar
7、配置Maven插件
在pom.xml中添加如下插件:

<plugin>
	<groupId>com.spotify</groupId>
	<artifactId>docker-maven-plugin</artifactId>
	<version>1.2.0</version>
	<executions>
		<execution>
			<id>build-image</id>
			<phase>package</phase>
			<goals>
				<goal>build</goal>
			</goals>
		</execution>
	</executions>
	<configuration>
		<dockerHost>http://192.168.124.15:2375</dockerHost>
		<imageName>docker/${project.artifactId}</imageName>
		<imageTags>
			<imageTag>${project.version}</imageTag>
		</imageTags>
		<forceTags>true</forceTags>
		<dockerDirectory>${project.basedir}</dockerDirectory>
		<resources>
			<resource>
				<targetPath>/</targetPath>
				<directory>${project.build.directory}</directory>
				<include>${project.build.finalName}.jar</include>
			</resource>
		</resources>
	</configuration>
</plugin>

a、首先在execution节点中配置当执行mvn package的时候,顺便也执行一下docker build
b、然后在configuration中配置docker的主机地址,镜像的名称,镜像的tag,其中dockerDirectory表示Dockerfile的位置
c、最后resource节点中再配置一下jar的位置和名称
8、打包
接下来对项目进行打包,打包完成后,项目会自动构建成一个镜像,并且上传到docker容器中
在这里插入图片描述
在这里插入图片描述
9、运行方式一
在这里插入图片描述
在这里插入图片描述
10、运行方式二
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
这样,我们的SpringBoot项目就可以成功的发布到远程docker容器中了。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值