Para criar uma imagem Docker compatível com a arquitetura `aarch64` (ARM64), você pode seguir os passos abaixo:
1. **Instale o QEMU**:
Antes de criar uma imagem multiarquitetura que inclua a arquitetura ARM64 em um sistema x86-64, você precisa instalar o emulador QEMU. O QEMU permitirá que você construa a imagem para uma arquitetura diferente da sua máquina host.
No Ubuntu, você pode instalar o QEMU com o seguinte comando:
```bash
sudo apt-get install qemu-user-static
```
Certifique-se de que o QEMU está instalado na sua máquina.
2. **Crie um Dockerfile Multiarquitetura**:
Crie um Dockerfile que seja compatível com múltiplas arquiteturas. Você pode usar uma imagem de base multiarquitetura como `arm64v8/nginx` para a arquitetura ARM64. Aqui está um exemplo de Dockerfile:
```Dockerfile
# Use uma imagem de base multiarquitetura compatível com ARM64
FROM arm64v8/nginx
# Copie sua página HTML de serviço em manutenção para o diretório de conteúdo padrão do Nginx
COPY service-em-manutencao.html /usr/share/nginx/html
# Exponha a porta 80 para o mundo externo
EXPOSE 80
# O comando de entrada padrão para iniciar o Nginx
CMD ["nginx", "-g", "daemon off;"]
```
Certifique-se de copiar o Dockerfile para o diretório onde está sua página HTML e outros arquivos necessários.
3. **Construa a Imagem Multiarquitetura**:
Utilize o comando `docker buildx` para criar a imagem multiarquitetura que inclua a arquitetura ARM64. Certifique-se de definir a plataforma correta:
```bash
docker buildx create --use
docker buildx build --platform linux/amd64,linux/arm64 -t seu-usuario/meu-projeto-manutencao:multiarch .
```
Isso criará uma imagem Docker compatível com as arquiteturas x86-64 e ARM64.
4. **Faça o Push da Imagem**:
Envie a imagem para o Docker Hub (ou outro registro de contêiner, se preferir) para que você possa puxá-la em sua máquina ARM64:
```bash
docker push seu-usuario/meu-projeto-manutencao:multiarch
```
Agora, você deve ter uma imagem Docker multiarquitetura que inclui a arquitetura `aarch64` (ARM64). Você pode puxar essa imagem em sua máquina ARM64 e executar o contêiner com a imagem correta. Certifique-se de ter o Docker configurado corretamente em sua máquina ARM64 e as dependências necessárias instaladas.