Skip to content

Commit d48856d

Browse files
committed
Update Docker Compose Apple Silicon guidance
The AtoM development service images now publish ARM64 variants, so Apple Silicon and other ARM-based hosts can use the default Compose file without an additional platform override. Discourage `platform: linux/amd64` for everyday ARM development because it forces emulation instead of using native ARM64 images. Image variant checks: docker buildx imagetools inspect docker.elastic.co/elasticsearch/elasticsearch-oss:7.10.2 docker buildx imagetools inspect percona/percona-server:8.4
1 parent f088944 commit d48856d

1 file changed

Lines changed: 14 additions & 20 deletions

File tree

dev-manual/env/compose.rst

Lines changed: 14 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -74,26 +74,20 @@ don't want to do so each time we invoke the ``docker compose`` command.
7474
# For fish users
7575
set -lx COMPOSE_FILE (pwd)/docker/docker-compose.dev.yml
7676
77-
ARM-based machines
78-
------------------
79-
80-
If you are using an ARM-based machine such as Apple Silicon MacBooks, you will need to use
81-
an additional override file that is provided to ensure compatibility. The Elasticsearch and Percona
82-
images need to run with platform emulation since they don't support ARM64 natively.
83-
84-
For ARM-based machines, set the ``COMPOSE_FILE`` environment variable to include
85-
both the development file and the ARM override file:
86-
87-
.. code-block:: bash
88-
89-
# For bash users (most of you)
90-
export COMPOSE_FILE="$PWD/docker/docker-compose.dev.yml:$PWD/docker/docker-compose.override.arm.yml"
91-
92-
# For fish users
93-
set -lx COMPOSE_FILE (pwd)/docker/docker-compose.dev.yml:(pwd)/docker/docker-compose.override.arm.yml
94-
95-
This override file forces Docker to use platform emulation to run the Elasticsearch and Percona containers
96-
with ``linux/amd64`` architecture on ARM-based machines.
77+
Apple Silicon and other ARM-based machines
78+
------------------------------------------
79+
80+
Docker automatically selects the native image variant for your Docker engine
81+
when an image publishes a multi-architecture manifest. The development service
82+
images used by AtoM, including Elasticsearch and Percona, now publish ARM64
83+
variants, so the default Compose file can run those services natively on Apple
84+
Silicon.
85+
86+
Platform emulation is only needed if a service is explicitly configured with
87+
``platform: linux/amd64``. We discourage that for everyday development on
88+
ARM-based machines because it forces the affected container to run through
89+
emulation instead of using the native ARM64 image, which is generally slower and
90+
more resource-intensive.
9791

9892
Running the containers
9993
======================

0 commit comments

Comments
 (0)