docker环境简单搭建springBoot项目集群

简介

分享自己在docker上简单搭建的springBoot项目集群流程操作;

主要操作流程

首先把SpringBoot项目打包,在idea中使用命令mvn package命令
在这里插入图片描述
或者在maven工程下的lifecycle里点击package直接打包工程;
然后再创建镜像同步到docker上,这里需要在Spring Boot中配置一个dockerfile插件,先在项目的pom.xml文件中添加插件:

<plugin>
    <groupId>com.spotify</groupId>
    <artifactId>dockerfile-maven-plugin</artifactId>
    <version>1.4.13</version>

    <configuration>
        <repository>${project.name}</repository>
        <tag>${project.version}</tag>
        <buildArgs>
            <JAR_FILE>${project.build.finalName}.jar</JAR_FILE>
        </buildArgs>
    </configuration>
</plugin>

然后再在项目/模块的根目录添加Dockerfile文件,文件内容为:

FROM openjdk:11
ARG JAR_FILE
ADD target/${JAR_FILE} app.jar
ENTRYPOINT ["java", "-jar", "/app.jar"]

在打包项目完成后再执行mvn dockerfile:build,即可同步项目镜像到docker上了;如果是远程docker则需要先修改本地变量,让系统默认连接远程docker。
此时已经可以用docker images命令查看是否存在项目的镜像;
在这里插入图片描述
到了这一步我们已经可以直接在docker启动该项目;
接下来是集群的配置,本次分享的是nginx下部署集群;首先当然是在dockers中下载nginx,当然直接docker pull nginx即可下载最新版nginx;然后创建一个docker-compose的yml配置文件,书写好集群工程的启动配置,就可以利用docker-compose一次启动多个集群工程,否则需要输入命令行挨个启动,比较麻烦。
在这里插入图片描述
首先version:3表示docker-compose是版本3;接下来比较重要的是volumes表示本地conf文件在docker的资源对应文件位置;然后是ports表示工程的端口映射;后面的project1、2、3则表示集群了三个工程,imag表示镜像工程的tag名;command则是取得工程别名,可以在运行工程时通过打印该名称知道是哪个集群项目在执行程序;当然conf文件而需要配置一下:
在这里插入图片描述
其中upstream的名shopColony一定要与location中的proxy——pass的路劲一致,否则无法请求无法找到服务器,当然每个集群项目的端口也要与yml文件保持一致;之后就可以直接在该文件目录下直接启动cmd,然后输入docker-compose up命令启动该集群项目:最后再启动nginx:

在这里插入图片描述
这样我们一个简单的nginx集群就创建好了!可以直接访问80端口,然后再由nginx自动分配给适合的集群工程。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值