.. _arm64: Running Tutor on ARM based Systems ================================== Tutor can be used on ARM64 systems, although support for that platform is currently experimental. There are generally two ways to run Tutor on am ARM system - using qemu to run x86_64 images using emulation or running native ARM images. Since emulation can be quite slow, this Tutorial will focus on using native images where possible. There are currently no official ARM64 images provided for Tutor, but Tutor makes it easy to build them yourself. Building the images ------------------- Start by :ref:`installing ` Tutor and its depdencies (e.g. Docker) onto your system. .. note:: For Open edX developers, if you want to use the :ref:`nightly ` version of Tutor to "run master", install Tutor using git and check out the ``nightly`` branch of Tutor at this point. See the :ref:`nightly documentation ` for details. Next, configure Tutor:: tutor config save --interactive Go through the configuration process, answering each question. Then, build the Open edX image:: tutor images build openedx If you want to use Tutor as an Open edX development environment, you should also build the development images:: # If you are using a regular Tutor release: tutor images build openedx-dev # Or if you are using Tutor nightly: tutor dev dc build lms Change the database server -------------------------- The version of MySQL that Open edX uses by default does not support the ARM architecture. Our current recommendation is to use MariaDB instead, which should be largely compatible. .. warning:: Note that using MariaDB is experimental and incompatibilites may exist, so this should only be used for local development - not for production instances. Configure Tutor to use MariaDB:: tutor config save --set DOCKER_IMAGE_MYSQL=mariadb:10.4 Finish setup and start Tutor ---------------------------- From this point on, use Tutor as normal. For example, to apply migrations and start Open edX:: tutor local init tutor local start Or for a development environment:: tutor local init tutor local stop tutor dev start Using with tutor-mfe -------------------- You may wish to use `tutor-mfe `_ to run the Open edX microfrontends. If so, be aware that there is a known issue with ``tutor-mfe`` on ARM systems. See `this GitHub issue `_ for details and known workarounds.