ERROR: No Matching Manifest For linux/arm64/v8 Apple Mac M5 Docker MySql y Laravel

- Andrés Cruz

EN In english

ERROR: No Matching Manifest For linux/arm64/v8 Apple Mac M5 Docker MySql y Laravel

Este error puede suceder en múltiples contextos pero vamos esta publicación va a tratar el caso específico de una Mac con M1 de los Apple Silicon en la cual intentamos ejecutar una app en Laravel con Laravel Sail y Docker y MySQL; en este escenario, es posible que te de el error anterior; para solventarlo, nada más fácil, basta con colocar dentro de tu archivo de docker-compose.yml la opción de platform: 'linux/amd64':

    mysql:
       image: 'mysql:8.0'
       platform: 'linux/amd64'

Y luego ejecutar nuevamente tu:

./vendor/bin/sail up

Para levantar tu app

Te dejo mas enlaces por aquí en el cual plantean otras soluciones en caso de que no te funcione el anterior:

  1. https://stackoverflow.com/questions/67948804/no-matching-manifest-error-when-using-sail-on-laravel
  2. https://github.com/laravel/framework/issues/38370
  3. https://onexlab-io.medium.com/apple-m1-chip-no-matching-manifest-for-linux-arm64-v8-docker-mysql-5142060a9309
Vamos a hablar sobre como resolver el error de Matching Manifest For linux/arm64/v8 que puede suceder en las Apple Mac M1 cuando ejecutamos el proyecto con Sail y Docker y MySQL.

Acepto recibir anuncios de interes sobre este Blog.

Andrés Cruz

EN In english
<script> window.addEventListener('scroll', function() { if (window.scriptsLoaded) return; loadThirdPartyScripts(); }, { once: true }); window.addEventListener('mousemove', function() { if (window.scriptsLoaded) return; loadThirdPartyScripts(); }, { once: true }); window.addEventListener('touchstart', function() { if (window.scriptsLoaded) return; loadThirdPartyScripts(); }, { once: true }); // Fallback if no interaction window.addEventListener('load', function() { setTimeout(function() { if (!window.scriptsLoaded) loadThirdPartyScripts(); }, 8000); }); function loadThirdPartyScripts() { if (window.scriptsLoaded) return; window.scriptsLoaded = true; console.log('Loading third party scripts...'); // Google Analytics var gtagScript = document.createElement('script'); gtagScript.src = 'https://www.googletagmanager.com/gtag/js?id=G-F22688T9RL'; gtagScript.async = true; document.head.appendChild(gtagScript); gtagScript.onload = function() { window.dataLayer = window.dataLayer || []; function gtag() { dataLayer.push(arguments); } gtag('js', new Date()); gtag('config', 'G-F22688T9RL'); }; // Google ADS const adScript = document.createElement('script'); adScript.src = "https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"; adScript.setAttribute('data-ad-client', 'ca-pub-5280469223132298'); adScript.async = true; document.head.appendChild(adScript); // Facebook Pixel (function(f, b, e, v, n, t, s) { if (f.fbq) return; n = f.fbq = function() { n.callMethod ? n.callMethod.apply(n, arguments) : n.queue.push(arguments) }; if (!f._fbq) f._fbq = n; n.push = n; n.loaded = !0; n.version = '2.0'; n.queue = []; t = b.createElement(e); t.async = !0; t.src = v; s = b.getElementsByTagName(e)[0]; s.parentNode.insertBefore(t, s); })(window, document, 'script', 'https://connect.facebook.net/en_US/fbevents.js'); fbq('init', '1643487712945352'); fbq('track', 'PageView'); } </script> <noscript> <img height="1" width="1" style="display:none" src="https://www.facebook.com/tr?id=1643487712945352&ev=PageView&noscript=1" /> </noscript>