Skip to content

Instantly share code, notes, and snippets.

@rwillians
Created August 24, 2023 13:34
Show Gist options
  • Save rwillians/f049ed4b431f6a2c63f56d48568dcaa5 to your computer and use it in GitHub Desktop.
Save rwillians/f049ed4b431f6a2c63f56d48568dcaa5 to your computer and use it in GitHub Desktop.
Scripts for manually building multi-platform image using more than 1 machine
#! /usr/bin/env sh
#
# Rode em uma máquina x64 (intel/amd)
#
VERSION='0.2.5'
docker --context=default buildx build \
-t "ghcr.io/rwillians/rinha-de-backend--elixir-plug-bandit-ecto:${VERSION}-amd64" \
--label "org.opencontainers.image.source=http://github.com/rwillians/rinha-de-backend--elixir-plug-bandit-ecto" \
--builder default \
--platform linux/amd64 \
--push .
#! /usr/bin/env sh
#
# Rode em uma máquina arm64v8 (por exemplo apple m1 / m2)
#
VERSION='0.2.5'
docker --context=default buildx build \
-t "ghcr.io/rwillians/rinha-de-backend--elixir-plug-bandit-ecto:${VERSION}-arm64v8" \
--label "org.opencontainers.image.source=http://github.com/rwillians/rinha-de-backend--elixir-plug-bandit-ecto" \
--builder default \
--platform linux/arm64/v8 \
--push .
##
# opcional: para que a imagem rode em dispositivos como raspberry pi
docker --context=default buildx build \
-t "ghcr.io/rwillians/rinha-de-backend--elixir-plug-bandit-ecto:${VERSION}-arm64v7" \
--label "org.opencontainers.image.source=http://github.com/rwillians/rinha-de-backend--elixir-plug-bandit-ecto" \
--builder default \
--platform linux/arm64/v7 \
--push .
#! /usr/bin/env sh
#
# Tanto faz rodar numa máquina x64 ou arm64
#
VERSION='0.2.5'
docker buildx imagetools create \
-t "ghcr.io/rwillians/rinha-de-backend--elixir-plug-bandit-ecto:latest" \
-t "ghcr.io/rwillians/rinha-de-backend--elixir-plug-bandit-ecto:${VERSION}" \
"ghcr.io/rwillians/rinha-de-backend--elixir-plug-bandit-ecto:${VERSION}-amd64" \
"ghcr.io/rwillians/rinha-de-backend--elixir-plug-bandit-ecto:${VERSION}-arm64v8" \
"ghcr.io/rwillians/rinha-de-backend--elixir-plug-bandit-ecto:${VERSION}-arm64v7"
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment