Étape 4: Créer nos Images de Docker
Permet de créer une image qui repose sur la distribution de Raspbian Jessie. Même si notre Pi est configuré avec Arch Linux, nous pouvons utiliser n’importe quel autre OS axée sur les framboises comme l’image de base pour notre service. Je vais suivre les instructions de Adafuit NodeJS développement embarqué.
L’idée derrière le Docker est de créer des images qui peuvent être reproduites en tout temps. Étant donné que le projet utilise NodeJS, permet de créer une image de NodeJS juste pour le Raspberry Pi. Plus tard, nous allons créer le programme dans une autre image de Docker qui se fondera sur cette image.
Image de nœud JS
Créez un répertoire nommé « rpi-nodejs » et changez dedans. Maintenant, créez un fichier nommé « Dockerfile » avec le contenu suivant :
Docker doit être chargé de lire ce Dockerfile et créer une image. Cela se fait avec la commande suivante :
Cela va construire une image de NodeJS basée sur le contenu de l’actuel «. « répertoire. L’image s’appellera « rpi-nodejs »
Ces instructions sont les mêmes que la documentation Adafruit avec quelques raccourcis. Au lieu d’utiliser curl pour apporter dans le référentiel Adafruit, j’ai simplement ajouté à la sources.list. Et enfin, comme des images de Docker s’exécuter en tant que root, l’image ne nécessitera pas le projet GPIO-Admin de faire partie de l’image. Vous pouvez voir cette image dans votre répertoire local d’image Docker :
Image de l’application
Maintenant permet de créer une image qui utilise notre nouvelle image NodeJS pour notre application. En reprenant les instructions nous devons installer et paquet NPM et ajouter notre code source.
Revenir au répertoire parent pour « rpi-nodejs » et créez un répertoire nommé « rpi-onoff » et changez dedans. Tout d’abord créer un nouveau fichier nommé « test.js » avec le contenu suivant :
Et maintenant, créez un autre fichier nommé « Dockerfile » avec le contenu suivant :
La première ligne de la Dockerfile précise que cette image se fondera sur notre image de rpi-nodejs nouvellement créé. Il s’agit d’un exemple de réutilisation des images de base communes pour différents projets. L’avantage est que toutes les images de vos applications et de services reposent sur le même parent.
La ligne de courir apportera à la dépendance pour onoff via le gestionnaire de paquet de la NGP.
Enfin, un répertoire est créé à l’image et le script test.js est copié en elle. Le point d’entrée raconte Docker que quand l’image est exécutée et rendue dans un récipient pour exécuter le script de test.js à l’aide du nœud.
Pour compiler et exécuter cette image :
L’option « privilégiée » doit être spécifiée comme cette image nécessite un accès R/W pour les broches GPIO. Maintenant que l’application est en cours d’exécution, appuyez sur la touche et regarder le LED tour sur et en dehors.