← До списку лабораторних по Docker
Повний опис / сценарій лабораторної:
Мета: зрозуміти як будувати один образ який працюватиме на різних архітектурах процесора. Крок 1. Увімкнути buildx у локальному Docker. Команда: docker buildx ls Пояснення: якщо builder ще не створено, потрібно його додати. Крок 2. Створити новий builder з підтримкою кількох платформ. Команда: docker buildx create --name multi73 --use Крок 3. Перевірити підтримувані платформи. Команда: docker buildx inspect --bootstrap Пояснення: зверни увагу на наявність linux/amd64 і linux/arm64. Крок 4. Підготувати простий Dockerfile без привʼязки до конкретної архітектури. Пояснення: не використовуй бінарники специфічні для платформи. Крок 5. Виконати build з параметром platform. Команда: docker buildx build --platform linux/amd64,linux/arm64 -t user/app73:multi --push . Пояснення: образ буде запушений у реєстр як multi arch. Крок 6. Перевірити маніфест образу у реєстрі. Команда: docker buildx imagetools inspect user/app73:multi Крок 7. На хості з arm спробувати витягнути і запустити образ. Пояснення: має автоматично вибратися відповідний варіант. Крок 8. Оцінити які залежності можуть бути проблемою для multi arch. Пояснення: деякі native бібліотеки доступні не для усіх платформ. Крок 9. Задокументувати правила написання Dockerfile які не ламають multi arch збірку. Крок 10. Міні звіт. Завдання: опиши де у твоїй інфраструктурі було б корисно мати multi arch образи.