# Поддержка работы на Apple M1

**URL:** <https://meta.discourse.org/t/support-for-running-on-apple-m1/229724>\
**Category:** Feature\
**Created:** [12.Июнь.2022 16:31:33 UTC](https://meta.discourse.org/t/support-for-running-on-apple-m1/229724 "2022-06-12T16:31:33Z")\
**Posts on this page:** 1\
**Showing post:** 1

<div class="post-metadata">

**Author:** ![titusc](https://avatars.discourse-cdn.com/v4/letter/t/9f8e36/32.png) [@titusc](https://meta.discourse.org/u/titusc)\
**Post date:** [12.Июнь.2022 16:31:33 UTC](https://meta.discourse.org/t/support-for-running-on-apple-m1/229724/1 "2022-06-12T16:31:33Z")

</div>

Привет! Я использую M1 для разработки автоматизации и инструментов запуска Discourse. Скрипт discourse-setup имеет проблему с определением процессоров на архитектуре ARM и завершается с ошибкой:

```plaintext
./discourse-setup: строка 261: *0: синтаксическая ошибка: ожидаемый операнд (ошибочный токен "*0")

```

Из-за этого контейнер не запускается. В моём случае используется подход с двумя контейнерами (веб + данные), поэтому не запускается именно web\_container.

Это происходит потому, что скрипт поддерживает только вывод /proc/cpuinfo для процессоров Intel, тогда как для ARM-процессоров он отличается. Пример можно увидеть в задаче [`/proc/cpuinfo` внутри контейнеров выдаёт бессмысленные данные на Apple M1 Max · Issue #6111 · docker/for-mac · GitHub](https://github.com/docker/for-mac/issues/6111).

Представленный ниже Pull Request пытается решить эту проблему, используя команду lscpu.  
[FEATURE: Обновлён расчёт avail\_cores для поддержки процессоров Apple M1 или ARM от cheungtitus · Pull Request #631 · discourse/discourse\_docker (github.com)](https://github.com/discourse/discourse_docker/pull/631)

**Полный вывод**

```plaintext
./discourse-setup --two-container
Файл конфигурации containers/web_only.yml уже существует!

. . . переконфигурация . . .

Сохранение старого файла как web_only.yml.2022-06-12-062509.bak
Остановка существующего контейнера через 5 секунд или нажмите Control-C для отмены.
ПРЕДУПРЕЖДЕНИЕ: Поддержка aarch64 в настоящее время экспериментальная. Пожалуйста, сообщайте о любых проблемах по адресу https://meta.discourse.org/tag/arm 
Нажмите любую клавишу, чтобы продолжить
ПРЕДУПРЕЖДЕНИЕ: Мы собираемся начать загрузку базового образа Discourse
Этот процесс может занять от нескольких минут до часа в зависимости от скорости вашей сети

Пожалуйста, будьте терпеливы

aarch64: получение из discourse/base
Сводка: sha256:a2ce381fdc4fed59fe160fb01b79bce0d5266f59ad907a22f3399772c8711791
Статус: Образ discourse/base:aarch64 уже актуален
docker.io/discourse/base:aarch64
ПРЕДУПРЕЖДЕНИЕ: Файл containers/web_only.yml доступен для чтения всеми. Вы можете защитить его, выполнив команду: chmod o-rwx containers/web_only.yml
web_only не был запущен!
./discourse-doctor может помочь диагностировать проблему.

./discourse-setup: строка 261: *0: синтаксическая ошибка: ожидаемый операнд (ошибочный токен "*0")

Введите доменное имя для вашего Discourse? [discourse.example.com]: 

```

---

_[View the full topic](https://meta.discourse.org/t/support-for-running-on-apple-m1/229724)._
