Sempre quis uma imagem docker oficial para rodar alguns jobs locais, rodar uns testes e usar para meus projetos.

Recentemente descobri que no spark 3.0.1 (na fonte) temos um Dockerfile e alguns scripts onde é possível criar sua imagem com alguns jars e bibliotecas adicionais.

Criei um processo que:

  1. Baixa o código base do spark.
  2. Constrói a image pyspark sem modificar nada.
  3. Usa essa imagem como base para outro dockerfile adicionando alguns jars (no meu caso, para acesso a GCS) e uma bibliotecas bastante utilizadas no python.
    No meu código, você vai encontrar um exemplo de leitura de um arquivo CSV.

Se você rodar o comando a seguir, vai poder conferir como ficou a imagem

make run_local

Você pode olhar o código em mais detalhes: https://github.com/rodrigolazarinigil/docker-spark

--

--

Rodrigo Lazarini Gil

Rodrigo Lazarini Gil

Working through the years with SQL, data modeling, data platform and engineering. Currently focused on data platform and spark jobs with python.