Développer des travaux de collage localement à l’aide de conteneurs Docker

Table des matières

Développer des travaux de collage localement à l’aide de conteneurs Docker

Pour configurer AWS glue localement, vous pouvez suivre la documentation AWS . Mais cela ne semble pas fonctionner et nous en discuterons en détail. J’ai donc créé une image Docker et je vais vous expliquer ce que nous faisons.

Je prends centos comme image de base, puis en définissant ces variables env, nous en aurons besoin pour télécharger les bibliothèques plus tard

Ensuite, nous allons créer un répertoire glue et installer les bibliothèques requises comme Java, Python, wget, tar et python et définir notre répertoire de travail sur glue

Maintenant, dans ce répertoire, vous pourrez télécharger les bibliothèques maven, spark et glue et les décompresser. Ensuite, nous mettrons à jour la variable path et y ajouterons les variables SPARK_HOME, JAVA_HOME, MAVEN_HOME et GLUE_HOME.

Voici un problème connu important où supprimera certaines des bibliothèques.

Nous allons maintenant compiler toutes les dépendances en utilisant maven. Ce script shell exécute la commande maven build et obtient toutes les dépendances requises.

Nous l’exécutons une fois afin que notre image docker contienne les bibliothèques à l’avance et vous fasse gagner du temps pour exécuter des tâches spark plus tard.

Enfin, nous allons nettoyer tous les répertoires tmp et utiliser bash comme point d’entrée dans notre conteneur.

Maintenant, utilisez le fichier docker et créez votre conteneur afin de commencer à développer vos travaux d’étincelle de colle.

Créer une image Docker à partir de Dockerfile

Pour créer l’image à partir de ce Dockerfile, exécutez la commande suivante:

Extraire l’image existante de DockerHub

Pour utiliser l’image existante pour démarrer votre conteneur, tirez simplement l’image du docker hub et exécutez les commandes fournies pour soumettre les travaux

Pour extraire l’image, exécutez la commande suivante:

Vérifiez l’image téléchargée en exécutant

Exécutez le conteneur Docker

Pour exécuter le conteneur et entrer dans repl coquille:

Pour entrer dans le terminal et soumettre une exécution de travail d’étincelle

De cette façon, vous pourrez tester votre travail sur votre machine locale ou vous pouvez également l’utiliser sur n’importe quelle instance EC2 en fonction de la taille de vos données.

Pour plus d’informations, visitez mon ou .