From dd512e912ac8a960c051913b68f343cd879248f0 Mon Sep 17 00:00:00 2001 From: abdul <150225239+abdulbaqui17@users.noreply.github.com> Date: Fri, 15 May 2026 13:59:04 +0530 Subject: [PATCH] fix(self-hosted): prevent Kong startup failures from CRLF line endings (#44422) ## What changed - added `docker/volumes/.gitattributes` with `* text=auto eol=lf` to enforce LF line endings for Docker-mounted volume files - added a Windows troubleshooting warning to the self-hosting Docker guide for Kong startup failures caused by CRLF line endings ## Why Issue #44052 reports `supabase-kong` failing with `exec /home/kong/kong-entrypoint.sh: no such file or directory`. A common cause is CRLF conversion on Windows for mounted shell scripts. Enforcing LF in `docker/volumes` prevents this class of failure for fresh checkouts/copies. ## Validation - `git check-attr text eol -- docker/volumes/api/kong-entrypoint.sh docker/volumes/db/roles.sql docker/volumes/logs/vector.yml` - `pnpm exec prettier --check apps/docs/content/guides/self-hosting/docker.mdx` - attempted `pnpm --prefix apps/docs run lint:mdx` (failed locally due missing `node-pty` native module in this environment) Closes #44052 ## Summary by CodeRabbit * **Documentation** * Added warning about Windows CRLF line ending issues with Docker mounted scripts and resolution steps. * **Chores** * Added line ending configuration to enforce LF format in Docker volumes. --------- Co-authored-by: Chris Chinchilla Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> --- .../docs/content/guides/self-hosting/docker.mdx | 8 +++++++- docker/.gitattributes | 17 +++++++++++++++++ 2 files changed, 24 insertions(+), 1 deletion(-) create mode 100644 docker/.gitattributes diff --git a/apps/docs/content/guides/self-hosting/docker.mdx b/apps/docs/content/guides/self-hosting/docker.mdx index 3f0e7fc1701..22fdba57a4f 100644 --- a/apps/docs/content/guides/self-hosting/docker.mdx +++ b/apps/docs/content/guides/self-hosting/docker.mdx @@ -198,7 +198,7 @@ Access to Studio (Dashboard) is protected with **HTTP basic authentication**. - A secure password MUST be set before starting Supabase. The password must include at least one letter - do not use numbers only or any special characters. + A secure password MUST be set before starting Supabase. The password must include at least one letter - do not use numbers only or any special characters. @@ -236,6 +236,12 @@ To stop Supabase, use: docker compose down ``` + + + If the API gateway (Kong) fails to start with an entrypoint error, your local files may have been checked out with CRLF line endings instead of LF. Re-clone the repository, or normalize everything in the `docker/` directory to LF, then restart Supabase. Fresh clones should already use LF because of `.gitattributes`. + + + ## Accessing Supabase Studio (Dashboard) By default, you can access the dashboard through the API gateway on port `8000`. diff --git a/docker/.gitattributes b/docker/.gitattributes new file mode 100644 index 00000000000..95aa9f91142 --- /dev/null +++ b/docker/.gitattributes @@ -0,0 +1,17 @@ +* text=auto + +*.md eol=lf + +*.env eol=lf +.env.example eol=lf + +*.sh eol=lf +*.sql eol=lf +*.yml eol=lf +*.yaml eol=lf +*.ts eol=lf +*.exs eol=lf +*.conf eol=lf +*.tpl eol=lf +Caddyfile eol=lf +Dockerfile* eol=lf