Creation dockerfile pong 1
Dockerizé un serveur web simple EnoncéDéveloppez un serveur HTTP qui expose le endpoint ping sur le port et répond par PONG Créez le ?chier Docker ?le qui servira à construire l'image de l'application Ce ?chier devra décrire les actions suivantes image de base alpine installation du runtime du langage choisi installation des dépendances de l ? application copie du code applicatif exposition du port d ? écoute de l ? application spéci ?cation de la commande à exécuter pour lancer le serveur Construire l ? image en la taguant pong v Lancez un container basé sur cette image en publiant le port sur le port de la machine hôte Tester l'application Correction Dans cette exemple nous avons choisi Node js Le code suivant est le contenu du ?chier pong js code du serveur web var express require 'express' var app express app get ' ping' function req res console log received res setHeader 'Content-Type' 'text plain' res end PONG app listen CLe ?chier package json contient les dépenances de l'application dans le cas présent il s'agit de la librairie expressjs utilisée pour la réalisation d'application web dans le monde NodeJs name pong version main pong js scripts start node pong js dependencies express Une version du Docker ?le pouvant être utilisé pour créer une image de l'application FROM node -alpine COPY app RUN cd app npm install WORKDIR app EXPOSE CMD npm start Note il y a toujours plusieurs approches pour dé ?nir le ?chier Docker ?le d'une application On aurait par exemple pu partir d'une image de base comme ubuntu ou alpine et installer le runtime nodejs comme dans l'exemple ci-dessous FROM alpine RUN apk update apk add nodejs COPY app RUN cd app npm install WORKDIR app EXPOSE CMD npm start La commande suivante permet de construire l'image à partir du Docker ?le précédent docker image build -t pong Sending build context to Docker daemon Step FROM node -alpine --- d f Step COPY app --- dbc fd Step RUN cd app npm install kB C--- Running in b eee Removing intermediate container b eee --- a ed f bbd Step WORKDIR app --- Running in a e bc Removing intermediate container a e bc --- db c f dc Step EXPOSE --- Running in ?bd f Removing intermediate container ?bd f --- b ? ? cf dc Step CMD npm start --- Running in db bec d Removing intermediate container db bec d --- f f a a Successfully built f f a a Successfully tagged pong La commande suivante permet de lancer un container basé sur l'image pong et le rend accessible depuis le port de la machine hôte docker container run -d -p pong a b cf d d c b dd b ee c cd cb b Note assurez-vous que le port n'est pas déjà pris par un autre container ou une autre application Si c'est le cas utilisez par exemple le port dans la commande ci-dessus A ?n de tester le serveur ping
Documents similaires










-
30
-
0
-
0
Licence et utilisation
Gratuit pour un usage personnel Aucune attribution requise- Détails
- Publié le Sep 08, 2022
- Catégorie Industry / Industr...
- Langue French
- Taille du fichier 29.1kB