summaryrefslogtreecommitdiff
path: root/src/main.rs
diff options
context:
space:
mode:
authorbatsumaru <>2026-10-16 16:10:32 +0900
committerbatsumaru <>2026-10-16 16:10:32 +0900
commit13219eb405db7c825d2875b3e88a7a53a73e8b7e (patch)
tree70e94dd60e0b1fedf80b179ff26f5cf52b6e94f6 /src/main.rs
parent67a57fa6221ed9bc6920a881784b308d4f5c3e6e (diff)
Add bind address config
Diffstat (limited to 'src/main.rs')
-rw-r--r--src/main.rs11
1 files changed, 9 insertions, 2 deletions
diff --git a/src/main.rs b/src/main.rs
index a80a12f..4f34c0c 100644
--- a/src/main.rs
+++ b/src/main.rs
@@ -6,12 +6,16 @@ mod models;
#[cfg(test)]
mod tests;
+use std::env;
+
use axum::{Router, routing::get};
use dotenvy::dotenv;
use sqlx::PgPool;
use crate::error::AppError;
+const BIND_ADDRESS_FALLBACK: &str = "127.0.0.1:8991";
+
fn router(pool: PgPool) -> Router {
Router::new()
.route("/health", get(handlers::health))
@@ -38,8 +42,11 @@ async fn main() -> anyhow::Result<()> {
dotenv().ok();
let pool = db::connect().await?;
let app = router(pool);
- let listener = tokio::net::TcpListener::bind("0.0.0.0:3000").await?;
- tracing::info!("listening at 0.0.0.0:3000");
+ let listener = tokio::net::TcpListener::bind(
+ env::var("HEALTH_BIND_ADDRESS").unwrap_or_else(|_| BIND_ADDRESS_FALLBACK.to_string()),
+ )
+ .await?;
+ tracing::info!("listening at {}", listener.local_addr()?);
axum::serve(listener, app).await?;
Ok(())
}