Spring Boot Integration
Orbien provides an embeddable Java client for Spring Boot. Current scope:
- Tunnel protocols: TCP and HTTP only
- Transport: TCP only
- No TCP multiplexing:
orbien.tcp-muxmust befalse, and the server must also set[transport].tcpMux = false(multiplexing is on by default; turn it off when using the Java client)
- Maven
- Gradle
<dependency>
<groupId>io.github.lxien</groupId>
<artifactId>orbien-spring-boot-starter</artifactId>
<version>3.6.1</version>
</dependency>
implementation("io.github.lxien:orbien-spring-boot-starter:3.6.1")
Minimal configuration
# application.yml
orbien:
enabled: true
server: "127.0.0.1:9527"
# token: YOUR_TOKEN
tunnel:
protocol: http
domains:
- web.example.com
Disable multiplexing on the server:
# orbien-server.toml
listen = "0.0.0.0:9527"
httpGwPort = 80
[transport]
tcpMux = false
TCP example
orbien:
enabled: true
server: "127.0.0.1:9527"
token: YOUR_TOKEN
tunnel:
protocol: tcp
# local-port: 3306
remote-port: 9000
Full reference
# application.yml
orbien:
enabled: true
server: "127.0.0.1:9527"
token: YOUR_TOKEN
tcp-mux: false # must be false
pool-count: 1
heartbeat-interval-secs: 30
user: spring-boot-demo
tunnel:
name: web-demo
protocol: http
local-ip: 127.0.0.1
# local-port: 8080
# remote-port: 9000
domains:
- web.example.com
# - admin
Configuration reference
| Key | Default | Description |
|---|---|---|
orbien.enabled | true | Whether to enable |
orbien.server | 127.0.0.1:9527 | Server address |
orbien.token | empty | Auth token |
orbien.tcp-mux | false | Only false is allowed |
orbien.pool-count | 1 | Data connections pre-allocated at login |
orbien.heartbeat-interval-secs | 30 | Control-plane heartbeat interval (seconds) |
orbien.user | empty | Display username |
orbien.tunnel.name | see above | Tunnel name |
orbien.tunnel.protocol | tcp | tcp or http |
orbien.tunnel.local-ip | 127.0.0.1 | Local service IP |
orbien.tunnel.local-port | 0 | Local service port |
orbien.tunnel.remote-port | 0 | Public port on the server; required when protocol=tcp |
orbien.tunnel.domains | [] | HTTP domain list; required when protocol=http |