Udemyのオススメ講座はこちら 詳細を見てみる

【M1 Mac版】絶対に失敗しないDockerでLaravel + Vue.jsの開発環境(LEMP環境)を構築する方法〜MacOS M1 Chip対応〜

  • URLをコピーしました!

この記事ではこのブログでかなり詳しく解説した「絶対に失敗しないDockerでLaravel + Vue.jsの開発環境(LEMP環境)を構築する方法」シリーズのM1 Mac版です。

この記事では過去記事との変更点のみを記載します。

といってもM1 Macの場合に変更がで必要なのはDB(MySQL)用コンテナ関連のファイルだけです。

それ以外はIntel製チップのMacと同じ手順なので、下の3つの記事をベースにしていただき、MySQLコンテナの設定のところまできたらこの記事を見て適宜修正してください。

Intel製チップMac版

目次

使用ツール・アプリケーションのバージョン

環境構築に使用するツール、アプリケーションのバージョンはこちらです。

ツール・アプリケーションバージョン
Git2.23.1
Docker20.10.5
Docker Compose1.29.0
Composer2.0.13
Laravel6.20.25
npm6.14.6
Vue.js2.6.12
MySQL8.0
使用ツール、アプリケーションのバージョン

完成版のGitHubリポジトリ

このブログで解説する開発環境の完成版のコードは既にGitHubに上げています。

必要に応じて参照ください。

M1 Macでの変更点

修正するのはdocker/mysql/Dockerfileだけです。

修正後

FROM --platform=linux/x86_64 mysql:8.0 

ENV TZ=UTC

COPY ./docker/mysql/my.cnf /etc/my.cnf

変更点

FROM mysql:8.0 → FROM –platform=linux/x86_64 mysql:8.0

このような修正をする理由はこちらです。

  • M1Macのプラットフォームはarm64
  • MySQLのDockerイメージのサポートプラットフォームはamd64
  • Dockerイメージをプルする際に実行環境のプラットフォームに合わせて自動的にamd64のイメージを取得するのでビルドするとエラーになる

以下の記事から参照させていただきました。

簡単にいうとまだMySQLのイメージはM1には対応してないってことですね。

補足

MySQLではなく、MariaDBを使う方法(MariaDBのイメージはM1対応している)もありますが、設定ファイル(docker/mysql/my.cnf)の修正が必要なのでこの記事での説明は割愛します。

この記事にMariaDBのイメージを使う方法が載っています。

最後に

これでIntel製チップ、M1チップどちらのMacでもDocker+Laravel+Vue.jsの環境を構築する方法をまとめることができました。

Dockerを使うとリポジトリをクローンしてポチポチするだけで環境が構築できるので、環境構築が楽になります。

ぜひこの記事と完成版のリポジトリを参考にしてみてください。

この記事が気に入ったら
フォローしてね!

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

ブログを開設するなら「SWELL」が絶対オススメ!

この記事を書いた人

大学院(機械工学)→重工業→エンジニア→プロダクトマネージャー(PdM)

神戸で「つながる勉強会」を運営↓
https://tsunagaru-kobe.connpass.com/

神戸グルメのインスタアカウントを運用しています↓
https://www.instagram.com/kobe_gourmet_life/

登壇実績↓
https://speakerdeck.com/shimotaroo

コメント

コメントする

目次