From 50a92190e97d3b61770a76233a34082146330b80 Mon Sep 17 00:00:00 2001 From: Jordan Anderson Date: Mon, 27 Jan 2025 17:34:25 -0600 Subject: [PATCH 1/2] Hardcode paths to /opt/nforwardauth, allowing running outside of Docker --- src/main.rs | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/main.rs b/src/main.rs index dfbb634..7bb0b2e 100644 --- a/src/main.rs +++ b/src/main.rs @@ -32,9 +32,9 @@ static FORWARDED_URI: &str = "X-Forwarded-Uri"; static FORWARDED_FOR: &str = "X-Forwarded-For"; /* File Paths */ -static INDEX_DOCUMENT: &str = "/public/index.html"; -static LOGOUT_DOCUMENT: &str = "/public/logout.html"; -static PASSWD_FILE: &str = "/passwd"; +static INDEX_DOCUMENT: &str = "/opt/nforwardauth/public/index.html"; +static LOGOUT_DOCUMENT: &str = "/opt/nforwardauth/public/logout.html"; +static PASSWD_FILE: &str = "/opt/nforwardauth/passwd"; /* HTTP Status Responses */ static NOT_FOUND: &[u8] = b"Not Found"; @@ -54,7 +54,7 @@ async fn api(req: Request) -> Result> { (&Method::GET, "/logout") => api_serve_file(LOGOUT_DOCUMENT, StatusCode::OK).await, _ => { api_serve_file( - format!("/public{}", req.uri().path()).as_str(), + format!("/opt/nforwardauth/public{}", req.uri().path()).as_str(), StatusCode::OK, ) .await From f5bc270bcbf1ed1f63814bd504c2efeffaaf3c0e Mon Sep 17 00:00:00 2001 From: Jordan Anderson Date: Mon, 27 Jan 2025 17:43:25 -0600 Subject: [PATCH 2/2] Modify Dockerfile to run against new hardcoded file locations --- Dockerfile | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/Dockerfile b/Dockerfile index 684edfa..a7ecbc8 100644 --- a/Dockerfile +++ b/Dockerfile @@ -46,15 +46,15 @@ RUN npx html-minifier --collapse-whitespace --remove-comments --remove-original- FROM alpine:3.17 # Copy binary from build stage -COPY --from=builder /build/nforwardauth /nforwardauth +COPY --from=builder /build/nforwardauth /opt/nforwardauth/nforwardauth # Copy files and assets to serve (overwritable via docker volume mount) COPY ./public /public -COPY --from=minifier /build/style.css /public/style.css -COPY --from=minifier /build/script.js /public/script.js -COPY --from=minifier /build/logout.js /public/logout.js -COPY --from=minifier /build/index.html /public/index.html -COPY --from=minifier /build/logout.html /public/logout.html +COPY --from=minifier /build/style.css /opt/nforwardauth/public/style.css +COPY --from=minifier /build/script.js /opt/nforwardauth/public/script.js +COPY --from=minifier /build/logout.js /opt/nforwardauth/public/logout.js +COPY --from=minifier /build/index.html /opt/nforwardauth/public/index.html +COPY --from=minifier /build/logout.html /opt/nforwardauth/public/logout.html # Set entrypoint for image -ENTRYPOINT ["/nforwardauth"] +ENTRYPOINT ["/opt/nforwardauth/nforwardauth"]