Apple M1 によるディスコース開発

こんにちは、
Discourse開発用にApple MacBook Pro M1の購入を検討しており、コミュニティの開発者の方々からM1プロセッサとDiscourse開発に関するレビューをお聞きしたいと考えています。

Discourse開発のメインデバイスとしてApple MacBook Pro M1をお勧めしますか?

「いいね!」 13

開発にM1を使用しているエンジニアは多く、彼らはそれを大変気に入っています。@david がさらに詳しく説明できるかもしれません。

「いいね!」 11

はい、とてもよく動作します!当初は互換性の面で少し苦労しましたが、現在はPostgres、Redis、Ruby、Discourseすべてが問題なく動作しています。以前のIntel搭載MacBookと比べてパフォーマンスが大幅に向上しました。詳細については、このトピックをご覧ください。

「いいね!」 15

説得力がありますね😉 @sam さん、@david さん、ありがとうございます!届き次第、私の体験談を投稿します😀

「いいね!」 3

こんにちは :wave: M1マシンでDiscourseの開発環境を構築しつつ、他の技術スタックを使ったプロジェクトも開発している方はいますか?その経験やプロセスについて教えていただけますか?

私は現在、いくつかのプロジェクトの開発と保守を行っていますが、それらの間で切り替えるのが非常に大変です。特にM1のARMアーキテクチャになってからは、その負担がさらに増しています。異なる技術スタックやCLI用のバイナリ場所を切り替えたり、異なるメールアドレス用のSSHキーを管理したりするために設定をいじり回すのは、本当に手間のかかる作業です。そのため、プロセスの最適化を図っており、.zshrcファイルにエイリアスや基本的なスクリプトを追加して対応しています。

現状では、Discourseのテーマ開発とコードベースの読みに専念するよう制限しています :face_vomiting: :joy:

参考:
M1マシンでDiscourse以外に開発している他の技術スタック:

  • Rails 6
  • Rails 5 + React
  • React Native
「いいね!」 2

完全な分離が必要な場合は、いつでも当社の Docker 環境を使用できます。

ネイティブ実行ほど高速ではありませんが、聞き取りによれば、実用性は十分とのことです。

「いいね!」 2

残念ながら、M1 向けの Docker 実装にはいくつかの問題があり、ベースイメージが動作しません :cry:

開発環境の分離については、各プロジェクトで異なる依存関係をインストールできるように、Bundler や Yarn を使用することをお勧めします。Ruby の場合、rvm などのツールを使えば、Ruby のバージョンを瞬時に切り替えることもできます。

「いいね!」 6