首页 > 其他分享 >测试3

测试3

时间:2022-10-01 10:36:35浏览次数:42  
标签:8080 demo jar nginx 测试 docker IPAddress

  • ​前端访问后端时,关闭后端接口,通过nginx转发​
  • 编写后端
# 控制层
@RestController
@RequestMapping("/user")
public class TestController {
@GetMapping("/test")
public String test(){
return "test success";
}
}

# yml
server:
port: 8080
  • 部署后端,测试(未关闭8080端口,直接访问后端接口)
  • 测试3_nginx

  • 编写前端
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
<a href="http://124.222.5.107:8080/user/test">直接访问</a><br>
<a href="http://124.222.5.107:8005/user/test">请求转发</a>
</body>
</html>
  • 放到如下目录
  • 测试3_docker_02

  • 配置nginx
  • 测试3_Nginx_03

  • 重启nginx,测试
  • 测试3_nginx_04

  • 未关闭8080端口,直接访问
  • 测试3_Nginx_05

  • 未关闭8080端口,请求转发
  • 测试3_Nginx_06

  • 关闭8080端口,请求转发
  • 测试3_nginx_07

  • 将后端项目打成镜像,在后端jar包所在目录编写Dockerfile
  • 测试3_ipad_08

# 因为项目使用的java11
FROM chniny/java:11.0.12
VOLUME /tmp
# jar包名称
ADD app.jar /app.jar
RUN sh -c 'touch /app.jar'
ENV JAVA_OPTS=""
ENTRYPOINT [ "sh", "-c", "java $JAVA_OPTS -Djava.security.egd=file:/dev/./urandom -jar /app.jar" ]
  • 构建并启动
# 构建
docker build -t chniny/demo:4.0 .

# 启动容器
docker run -dit --restart=always --name demo -p 8080:8080 chniny/demo:4.0

# 不停止容器退出前台
ctrl + p + q
  • ​云服务器先放开8080端口,测试​
  • 测试3_nginx_09

  • 使用内网
# 服务器创建网络
docker network create -d bridge my-bridge

# 将nginx添加到网络
docker network connect my-bridge nginx

# 将后端镜像添加到网络
docker network connect my-bridge demo

# 注意
# 如果使用如下方式启动后端镜像
docker run -it --net=host --name demo -p 8080:8080 chniny/demo:4.0
# 添加到自定义的网络时会报错
Error response from daemon: container sharing network namespace with another container or host cannot be connected to any other network
# 需使用入下方式
docker run -dit --restart=always --name demo -p 8080:8080 chniny/demo:4.0

# 查看nginx的网络
[root@VM-12-15-centos jar]# docker inspect 7b85604f7502 | grep IPAddress
"SecondaryIPAddresses": null,
"IPAddress": "172.17.0.3",
"IPAddress": "172.17.0.3",
"IPAddress": "172.18.0.2",

# 查看后端镜像的网络
[root@VM-12-15-centos jar]# docker inspect 0c88ace83397 | grep IPAddress
"SecondaryIPAddresses": null,
"IPAddress": "172.17.0.4",
"IPAddress": "172.17.0.4",
"IPAddress": "172.18.0.3",

# 测试:后端ping nginx -> 成功
docker exec -it demo ping nginx

# 测试:nginx ping 后端-> 报错
docker exec -it nginx ping demo
OCI runtime exec failed: exec failed: container_linux.go:380: starting container process caused: exec: "ping": executable file not found in $PATH: unknown

# 清理此容器的网络占用(未使用)
docker network disconnect --force 网络模式 容器名称
docker network disconnect --force bridge nginx
  • 前端index.html
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
<a href="http://124.222.5.107:8080/user/test">直接访问</a><br>
<a href="http://124.222.5.107:8005/user/test">请求转发</a>
</body>
</html>
  • index.html放到如下目录
  • 测试3_ipad_10

  • 配置nginx,并重启
  • 测试3_Nginx_11

  • ​云服务器关闭8080端口​
  • 直接访问
  • 测试3_docker_12

  • 请求转发 -> 测试成功
  • 测试3_Nginx_13



标签:8080,demo,jar,nginx,测试,docker,IPAddress
From: https://blog.51cto.com/chniny/5728135

相关文章

  • 测试1
    ​​反向代理​​在服务器中部署后端项目,测试,可以获取到数据配置nginx这时访问80端口,就能访问到8080端口的数据​​请求转发​​不使用转发访问后端接口配置nginx使用转发......
  • XD01创建扩展客户前台以及BAPI测试步骤
    前两天有人在群里问SD_CUSTOMER_MAINTAIN_ALL怎么创建客户。我在demo机上测试XD01创建客户,然后再测试使用BAPI。Demo机是ECC,S4已结不用XD01了,统一使用BP创建客户和供应商等......
  • IOS版数控仿真手机测试
    数控仿真苹果手机软件测试,欢迎iPhone用户下载试用,提出宝贵意见,此安装包为越狱包,大多系统可能不支持。下载链接:https://pan.baidu.com/s/1Dmdoo0QNA0AyXoRTEhzqDg 提取码:......
  • 信迈AM5728 CAN总线测试及SDK升级,linux can 调试命令
    一、AM5728CAN总线测试开发板文件系统下执行如下指令,配置CAN0总线(软件上的CAN0对应为硬件上的CAN1)比特率为1MHz,并启动CAN总线:Target#canconfigcan0bitrate10000......
  • windows下安装Electron并测试加载网址
    查看官网的教程,根本就安装不了,索性随便查了其他资料总结配置淘宝镜像npminstall-gcnpm--registry=https://registry.npm.taobao.org执行全局安装cnpminstalle......
  • 测试4错误纠正
    没错!还是那神奇的四则运算,它,,又来啦!!!话不多说,直接上代码!!!本次实践,主要实现了分年级的继承功能问题、错题集整理和重做问题、查看正确率问题、还有之前已经实现过的四则运算......
  • 自动化测试中的翻页逻辑
    在许多测试场景中,不免出现需要翻页寻找的元素,在翻页寻找的过程中,需要注意其中的逻辑主要的思维导图: ......
  • 内网速度测试
    目的测试公司地下埋线(网线)是百兆还是千兆 测试方案两台千兆网卡的电脑,A和BA->千兆交换机->埋线B->埋线除埋线外,使用的都是cat6标识的千兆网线。 使用iperf......
  • 四则运算测试二
    packageoperation;importjava.util.Random;importjava.util.Scanner;publicclassoperation{publicstaticintnumber=0;//个数publicstaticintmult=......
  • postman 模拟form Post 测试传入List<String>参数方式
    1.postman测试传入List<String>参数方式  http://www.zzvips.com/article/206812.html 2.关于postman的form-data如何传递数组形式 https://blog.csdn.net/chrispaul......