Tutor working locally on Apple M1 Silicon! Here's a guide

Sorry if this is already known, but for anyone who wants to run Tutor on their Mac with an M1 chip, you won’t be able to by default because MySQL doesn’t have an ARM64 component.

With the latest Docker Desktop (4.3) you can natively run AMD/Intel based containers without Rosetta 2. To run Tutor, here’s the steps I took:

  1. tutor config save --interactive
  2. Edit the file: “$(tutor config printroot)/env/local/docker-compose.yml”

Find the mysql section and add the following platform property:

  mysql:
    image: docker.io/mysql:5.7.33
    platform: linux/amd64
    command: mysqld --character-set-server=utf8 --collation-server=utf8_general_ci
    restart: unless-stopped
    volumes:
      - ../../data/mysql:/var/lib/mysql
    environment:
      MYSQL_ROOT_PASSWORD: "***"
  1. Run: tutor local dc pull
  2. Run: tutor local init
  3. Run: tutor local start [-d] # the -d is optional to run detached

You should have a fully functional tutor dev environment after this! Open your browser and head to http://local.overhang.io/ to check it out!

  1. Add the following to your ~/.zshrc: export DOCKER_DEFAULT_PLATFORM=linux/amd64
  2. Log back in.

From there, you should now be able to run tutor local quickstart from here on out, and install most plugins (discovery, ecommerce, mfe all work, tutor-richie for some reason does not although you can use the environment variable in #6 to install richie standalone just fine).

1 Like

The question of supporting ARM in Tutor is being tracked here: Support for ARM64 · Issue #510 · overhangio/tutor · GitHub
The recommended solution is not to manually edit the rendered environment (it’s never a good idea) but to modify some setting, or to create a plugin.

Thanks, I used the solution offered in that issue for lilac and it worked great, even for Richie and other plugins.

This topic was automatically closed 90 days after the last reply. New replies are no longer allowed.