docker(七)SpringBoot集群搭建 Nginx负载

在这里插入图片描述

启动多个SpringBoot容器

  • 1 先准备一个springboot项目
  • 2 把SpringBoot项目打成jar包(jar包名称:springboot-mybatis-demo-0.0.1-SNAPSHOT.jar),上传至服务器中
    • 我这里使用的是 FinalShell 连接的服务器,直接拖拽可以实现上传
      在这里插入图片描述
      在这里插入图片描述
  • 3在服务器的 /tmp/springboot/ 目录下创建Springboot的启动配置文件
FROM openjdk:8
MAINTAINER lhy
LABEL name="springboot-mybatis" version="1.0" author="lhy"
COPY springboot-mybatis-demo-0.0.1-SNAPSHOT.jar springboot-mybatis.jar
CMD ["java","-jar","springboot-mybatis.jar"]
  • 4 创建SpringBoot的镜像

docker build -t sbm-image .

  • 5 创建对应的网段,给springboot和nginx使用

docker network create --subnet=172.24.0.0/24 sbm-net

  • 5 基于创建的springboot镜像 启动容器

docker run -d --name sb01 -p 8081:8080 --net=sbm-net --ip 172.24.0.11 sbm-image

  • 6 浏览器测试访问

http://ipclient:8081/user/query (SpringBoot默认提供的访问接口)

  • 7 创建多个SpringBoot容器
docker run -d --name sb01 -p 8081:8080 --net=pro-net --ip 172.24.0.11 sbm-image
docker run -d --name sb02 -p 8082:8080 --net=pro-net --ip 172.24.0.12 sbm-image
docker run -d --name sb03 -p 8083:8080 --net=pro-net --ip 172.24.0.13 sbm-image

安装Nginx 来进行负载均衡

  • 1拉取nginx镜像

docker pull nginx

  • 2 在服务器的/tmp/nginx下新建nginx.conf文件,并进行相应的配置
user nginx;
worker_processes  1;
events {
    worker_connections  1024;
}
http {
    include       /etc/nginx/mime.types;
    default_type  application/octet-stream;
    sendfile        on;
    keepalive_timeout  65; 

   
    server {
        listen 80;
        location / {
         proxy_pass http://balance;
        }
    }
    
    upstream balance{  
        server 172.55.0.11:8080;  #这里填写多个SpringBoot的网段IP
        server 172.55.0.22:8080;
    }
    include /etc/nginx/conf.d/*.conf;
}
  • 3 启动Nginx 容器

docker run -d --name my-nginx -p 80:80 -v /tmp/nginx/nginx.conf:/etc/nginx/nginx.conf --network=pxc-net --ip 172.24.0.10 nginx

  • 4 测试成功(默认80端口,不用填写端口信息)

http://39.108.153.252/user/query

在这里插入图片描述

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值