How do I deploy Rocket.Chat with Docker on Apple Silicon Mac (M-series)?
The Rocket.Chat Docker image (version 6.7.0 and later) is designed for the amd64 architecture, which is incompatible with the arm64 architecture used by Apple silicon Macs. Attempting to deploy the Docker image on an M-series Mac can result in compatibility issues.
You will likely to get this error after starting the Rocket.Chat container:
The requested image's platform (linux/amd64) does not match the detected host platform (linux/arm64/v8) and no specific platform was requested
Follow the steps below to resolve it:
Ensure you have Rosetta 2 on your Mac; this allows the M-series Macs to run Intel-based applications. Confirm this by running:
arch -x86_64 uname -m
If Rosetta 2 is installed, this command will output “x86_64.” If not, macOS will prompt you to install Rosetta 2.
Open Docker Desktop, navigate to Settings > General and enable Rosetta for Docker Desktop. This allows Docker to emulate x86_64/amd64 architecture.
In the
compose.yml
file, add “platform: linux/amd64” to the rocketchat service.Next, add “EXPERIMENTAL_DOCKER_DESKTOP_FORCE_QEMU: 1” to the mongodb service environment. This forces the service to use the correct emulation settings.
Now, run
docker compose up -d
Your Rocket.Chat instance should now be accessible via http://localhost:3000
or your ROOT_URL
.
How do I deploy Rocket.Chat with AWS for Apple Silicon Mac (M-series)?
To do this:
In the AWS EC2 launch wizard, go to the “Application and OS Images (Amazon Machine Image)” section.
Choose an ARM-compatible OS, such as Ubuntu for ARM64.
Proceed with the rest of your deployment steps as usual.
Note: Not all AMIs or EC2 instance types support ARM architecture, so be sure to select compatible options.
What are deployment environment variables?
The variables configured in the compose.yml
and .env
files determine how Rocket.Chat is deployed. This includes the workspace URL, ports, and MongoDB and Traefik configurations. It is recommended that you modify the .env
file to maintain a clean configuration and avoid editing the compose.yml
file directly.
Resources:
Docker deployment guide: Create a .env file section showing the minimum variables you need to set.
Deployment environment variable: This document lists the mandatory and optional deployment variables.
Manage settings using environmental variables: This document shows how you can manage workspace settings during deployment using environment variables.