Successfully running Retool On-Premise on Apple Silicon with Rancher Desktop - Architecture compatibility issue

:bulb: FYI: Self-hosted questions can take a bit longer to answer since setups vary — including key details below helps us get you unblocked faster! -->

  1. My goal: Share a successful solution for running Retool On-Premise on Apple Silicon Macs with Rancher Desktop, solving the "exec format error" that was blocking many users.
  2. Issue: Previously getting "exec format error" across all Retool containers when trying to run on Apple Silicon (ARM64) hardware with Rancher Desktop. This was considered "not supported" due to architecture mismatch between AMD64 Docker images and ARM64 host.
  3. Retool version & hosting setup (Docker, K8s, cloud provider, etc.):
  • Retool version: 3.253.1-stable
  • Hosting: Docker Compose with Rancher Desktop
  • Hardware: Apple Silicon Mac (M1/M2/M3)
  • OS: macOS 14+
  • Resources: 8 CPUs, 16GB RAM allocated to Rancher Desktop
  1. Error message(s) or screenshots:
exec /usr/local/bin/docker-entrypoint.sh: exec format error

All containers were crashing with exit code 255 due to architecture incompatibility.

  1. What I've tried so far:

SOLUTION FOUND! :white_check_mark:

After extensive debugging, here's what worked:

Step 1: Enhanced x86_64 Emulation

# Install QEMU emulators for multi-arch support
docker run --privileged --rm tonistiigi/binfmt --install all

# Create multi-platform builder
docker buildx create --name multiarch --platform linux/amd64,linux/arm64
docker buildx use multiarch

# Set default platform
export DOCKER_DEFAULT_PLATFORM=linux/amd64

Step 2: Force AMD64 Platform in ALL Services Modified compose.yaml and temporal.yaml:

services:
  api:
    platform: linux/amd64
  postgres:
    platform: linux/amd64
  # Applied to every single service

Step 3: Code Executor Compatibility Added to docker.env:

IGNORE_CODE_EXECUTOR_STARTUP_CHECK=true
DISABLE_IPTABLES_SECURITY_CONFIGURATION=true
CONTAINER_UNPRIVILEGED_MODE=true

Results:
:white_check_mark: All containers healthy and stable
:white_check_mark: Full Retool functionality working
:white_check_mark: HTTP 200 on localhost:3000
:white_check_mark: No architecture errors

Impact: This enables teams using Rancher Desktop (common in enterprise environments where Docker Desktop isn't allowed) to run Retool On-Premise on Apple Silicon hardware.

Resources: I've documented the complete step-by-step setup process. This was previously considered impossible but is now working reliably.

Hope this helps others facing similar Apple Silicon + Rancher Desktop challenges! :rocket:

1 Like

Thanks for sharing, @miguelofbc! Out of curiosity, did you ever try running Rancher Desktop with VZ emulation and Rosetta?

Yes. But the failure was persistent even with those configs. Didn't retry after finding this successful combination though. But it was failing with those configs before. Perhaps all the other changes I did with VZ + Rosetta will work, I don't know. If I find some more time I can give it a try.

1 Like

Thanks again for tackling this issue, @miguelofbc! I'm breaking your specific solution out into a separate post so that it can be marked as such. :+1: