mirror of
https://github.com/CCC-MF/bwhc-kafka-rest-proxy.git
synced 2025-04-19 19:16:51 +00:00
feat: add config option for listen address and port
This commit is contained in:
parent
42b5189d32
commit
7b36255e2d
@ -25,6 +25,8 @@ Options:
|
|||||||
Kafka Topic [env: APP_KAFKA_TOPIC=] [default: etl-processor_input]
|
Kafka Topic [env: APP_KAFKA_TOPIC=] [default: etl-processor_input]
|
||||||
--token <TOKEN>
|
--token <TOKEN>
|
||||||
bcrypt hashed Security Token [env: APP_SECURITY_TOKEN=]
|
bcrypt hashed Security Token [env: APP_SECURITY_TOKEN=]
|
||||||
|
--listen <LISTEN>
|
||||||
|
Address and port for HTTP requests [env: APP_LISTEN=] [default: 0.0.0.0:3000]
|
||||||
```
|
```
|
||||||
|
|
||||||
Die Anwendung lässt sich auch mit Umgebungsvariablen konfigurieren.
|
Die Anwendung lässt sich auch mit Umgebungsvariablen konfigurieren.
|
||||||
@ -32,6 +34,7 @@ Die Anwendung lässt sich auch mit Umgebungsvariablen konfigurieren.
|
|||||||
* `APP_KAFKA_SERVERS`: Zu verwendende Kafka-Bootstrap-Server als kommagetrennte Liste
|
* `APP_KAFKA_SERVERS`: Zu verwendende Kafka-Bootstrap-Server als kommagetrennte Liste
|
||||||
* `APP_KAFKA_TOPIC`: Zu verwendendes Topic zum Warten auf neue Anfragen. Standardwert: `etl-processor_input`
|
* `APP_KAFKA_TOPIC`: Zu verwendendes Topic zum Warten auf neue Anfragen. Standardwert: `etl-processor_input`
|
||||||
* `APP_SECURITY_TOKEN`: Verpflichtende Angabe es Tokens als *bcrypt*-Hash
|
* `APP_SECURITY_TOKEN`: Verpflichtende Angabe es Tokens als *bcrypt*-Hash
|
||||||
|
* `APP_LISTEN`: Adresse und Port für eingehende HTTP-Requests. Standardwert: `0.0.0.0:3000` - Port `3000` auf allen Adressen
|
||||||
|
|
||||||
## HTTP-Requests
|
## HTTP-Requests
|
||||||
|
|
||||||
|
@ -27,4 +27,11 @@ pub struct Cli {
|
|||||||
help = "bcrypt hashed Security Token"
|
help = "bcrypt hashed Security Token"
|
||||||
)]
|
)]
|
||||||
pub token: String,
|
pub token: String,
|
||||||
|
#[arg(
|
||||||
|
long,
|
||||||
|
env = "APP_LISTEN",
|
||||||
|
default_value = "0.0.0.0:3000",
|
||||||
|
help = "Address and port for HTTP requests"
|
||||||
|
)]
|
||||||
|
pub listen: String,
|
||||||
}
|
}
|
||||||
|
11
src/main.rs
11
src/main.rs
@ -58,8 +58,15 @@ async fn main() {
|
|||||||
#[cfg(debug_assertions)]
|
#[cfg(debug_assertions)]
|
||||||
let app = app.layer(TraceLayer::new_for_http());
|
let app = app.layer(TraceLayer::new_for_http());
|
||||||
|
|
||||||
let listener = tokio::net::TcpListener::bind("0.0.0.0:3000").await.unwrap();
|
match tokio::net::TcpListener::bind(&CONFIG.listen).await {
|
||||||
axum::serve(listener, app).await.unwrap();
|
Ok(listener) => {
|
||||||
|
log::info!("Starting application listening on '{}'", CONFIG.listen);
|
||||||
|
if let Err(err) = axum::serve(listener, app).await {
|
||||||
|
log::error!("Error starting application: {}", err)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
Err(err) => log::error!("Error listening on '{}': {}", CONFIG.listen, err),
|
||||||
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
async fn check_basic_auth(request: Request<Body>, next: Next) -> Response {
|
async fn check_basic_auth(request: Request<Body>, next: Next) -> Response {
|
||||||
|
Loading…
x
Reference in New Issue
Block a user