SpringBoot生态集成
etp v0.4.0版本开始支持etp客户端嵌入到SpringBoot / Spring Cloud应用中运行,只需引入Maven/Gradle坐标,添加几行配置即可无缝集成,生命周期与SpringBoot完全同步,无需单独安装etpc客户端。环境要求如下:
- JDK8+
- Maven or Gradle
引入依赖
根据自己项目使用的SpringBoot版本引入对应的依赖,最新版本可从Maven中央仓库中获取。仓库也提供了使用案例,下载地址。
SpringBoot 2.x
- Maven
- Gradle
<dependency>
<groupId>io.github.xiaoniucode</groupId>
<artifactId>etp-spring-boot-starter</artifactId>
<version>0.2.1</version>
</dependency>
implementation("io.github.xiaoniucode:etp-spring-boot-starter:0.2.1")
SpringBoot 3.x
- Maven
- Gradle
<dependency>
<groupId>io.github.xiaoniucode</groupId>
<artifactId>etp-spring-boot3-starter</artifactId>
<version>0.2.1</version>
</dependency>
implementation("io.github.xiaoniucode:etp-spring-boot3-starter:0.2.1")
SpringBoot 4.x
- Maven
- Gradle
<dependency>
<groupId>io.github.xiaoniucode</groupId>
<artifactId>etp-spring-boot4-starter</artifactId>
<version>0.2.1</version>
</dependency>
implementation("io.github.xiaoniucode:etp-spring-boot4-starter:0.2.1")
快速开始
在application.yml中添加如下最基础的配置即可开启代理。
etp:
client:
enabled: true #是否开启etp代理,默认为关闭状态
server-addr: localhost #服务器地址,默认:localhost
secret-key: your-secret-key #认证Token
启动SpringBoot应用后查看控制台日志可看到公网访问链接相关信息。
完整配置参考:
etp:
client:
enabled: true #是否开启etp代理,默认为关闭状态
server-addr: localhost #服务器地址
secret-key: your-secret-key #Token
remote-port: 8025 #自定义remotePort公网端口,不指定会自动分配
auto-start: true # 是否自动开启代理,默认是true,如果为false需要去管理界面手动开启
tls: false # 是否开启隧道tls加密
truststore:
path: cert/client.p12 #证书路径
store-pass: your-store-pass # 密钥
initial-delay-sec: 2 #首次连接失败延迟
max-delay-sec: 10 # 最大延迟秒数
max-retries: 8 # 最大重试次数
详细配置细节请查看源码: EtpClientProperties.java