Sign inSign up

marcusfreire/flutter

By marcusfreire

•Updated about 2 years ago

Ideal for Flutter Android CI/CD with pre-configured environment—no setup for Flutter or SDK needed

Image
0

343

marcusfreire/flutter repository overview

Esta imagem Docker é baseada no Ubuntu 22.04 e está configurada para oferecer um ambiente completo para desenvolvimento e construção de aplicativos Flutter para Android.

Principais características:

  • Flutter SDK: Instalado a partir do repositório oficial no branch estável e atualizado para a versão mais recente, permitindo o desenvolvimento de aplicativos Flutter com as funcionalidades mais atualizadas.

  • Dart SDK: Incluído como parte do Flutter SDK, garantindo compatibilidade com o código Dart.

  • Android SDK: Inclui o Android SDK Command-line Tools, com as licenças já aceitas, facilitando a configuração e evitando prompts de licença durante o build.

  • Ferramentas do Android:

    • Platform Tools: Fornece ferramentas como adb para interagir com dispositivos Android.
    • Plataformas: Inclui a plataforma android-33, permitindo direcionar a API 33 do Android.
    • Build Tools: Inclui a versão 33.0.2 das ferramentas de build necessárias para compilar aplicativos Android.
  • Java Development Kit (JDK): Inclui o OpenJDK 17, garantindo compatibilidade com as versões mais recentes das ferramentas do Android SDK que requerem Java 17.

  • Dependências adicionais:

    • Ferramentas de linha de comando: curl, git, unzip, xz-utils, zip, wget para suporte ao download e manipulação de arquivos.
    • Bibliotecas gráficas: libglu1-mesa para suporte gráfico, se necessário.
  • Configurações de ambiente:

    • Variáveis ANDROID_SDK_ROOT e ANDROID_HOME definidas para /opt/android-sdk.
    • O PATH é atualizado para incluir os binários do Flutter e do Android SDK.
  • Verificação e preparação do ambiente:

    • Executa flutter upgrade para garantir que o Flutter esteja na versão mais recente.
    • Executa flutter doctor -v para verificar a instalação e preparar o cache necessário.

Uso pretendido:

Esta imagem é ideal para pipelines de Integração Contínua/Entrega Contínua (CI/CD) que exigem um ambiente pré-configurado para construir e empacotar aplicativos Flutter para Android. Ela elimina a necessidade de configurar manualmente o Flutter e o Android SDK, reduzindo o tempo de build e evitando problemas relacionados à configuração do ambiente.

Como usar:

  • Defina a imagem em seu arquivo de configuração (por exemplo, em um Dockerfile ou em um pipeline Jenkins).
  • Certifique-se de que seu ambiente ou pipeline use esta imagem para executar comandos do Flutter, como flutter build apk.

Benefícios:

  • Praticidade: Ambiente pronto para uso sem necessidade de configurações adicionais.
  • Consistência: Garante que todos os builds sejam executados em um ambiente consistente.
  • Atualizado: Inclui as versões mais recentes do Flutter e das ferramentas do Android.

Exemplo de uso em um Dockerfile:

FROM marcusfreire/flutter:latest

# Copie seu código-fonte para o diretório de trabalho
COPY . /app

# Defina o diretório de trabalho
WORKDIR /app

# Instale as dependências e construa o APK
RUN flutter pub get && \
    flutter build apk --release

Tag summary

Content type

Image

Digest

sha256:db3701bb4…

Size

1 GB

Last updated

about 2 years ago

docker pull marcusfreire/flutter