summaryrefslogtreecommitdiff
path: root/src
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
parent67a57fa6221ed9bc6920a881784b308d4f5c3e6e (diff)
Add bind address config
Diffstat (limited to 'src')
-rw-r--r--src/db.rs2
-rw-r--r--src/main.rs11
2 files changed, 10 insertions, 3 deletions
diff --git a/src/db.rs b/src/db.rs
index 87686fa..7e3610b 100644
--- a/src/db.rs
+++ b/src/db.rs
@@ -5,7 +5,7 @@ const DATABASE_URL_FALLBACK: &str = "postgres://health:health@127.0.0.1:5432/hea
pub async fn connect() -> Result<PgPool, sqlx::Error> {
let database_url =
- env::var("DATABASE_URL").unwrap_or_else(|_| DATABASE_URL_FALLBACK.to_owned());
+ env::var("DATABASE_URL").unwrap_or_else(|_| DATABASE_URL_FALLBACK.to_string());
PgPoolOptions::new()
.max_connections(5)
.connect(&database_url)
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(())
}