Skip to content

supabase start fails on arm64: realtime:v2.82.0 ships corrupted tini binary #5081

@jeffersongirao

Description

@jeffersongirao

Bug report

Describe the bug

supabase start (and supabase db reset) fails on Apple Silicon (arm64) because the realtime:v2.82.0 Docker image contains a corrupted /usr/bin/tini — the binary is 68,592 bytes of null bytes (all 0x00).

Waiting for health checks...
supabase_realtime_velory-next container logs:
exec /usr/bin/tini: exec format error

This was introduced in CLI v2.89.0 when realtime was bumped from v2.80.13 to v2.82.0 (#5055). The previous image (v2.78.10) works correctly.

To reproduce

docker pull --platform linux/arm64 public.ecr.aws/supabase/realtime:v2.82.0
docker run --rm --platform linux/arm64 --entrypoint /usr/bin/tini public.ecr.aws/supabase/realtime:v2.82.0 -- echo hello
# => exec /usr/bin/tini: exec format error

Verify the binary is zeroed out:

docker run --rm --platform linux/arm64 --entrypoint /bin/sh public.ecr.aws/supabase/realtime:v2.82.0 -c "od -An -tx1 -N 20 /usr/bin/tini"
# => 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00

Expected behavior

/usr/bin/tini should be a valid arm64 ELF binary and the realtime container should start normally.

Environment

  • OS: macOS 15.6 (Apple Silicon / arm64)
  • Docker: 29.2.1
  • Supabase CLI: 2.90.0

Workaround

Pin realtime to the previous working version via the CLI's temp-file override:

mkdir -p supabase/.temp
echo -n "v2.78.10" > supabase/.temp/realtime-version

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions