One place for hosting & domains

      Kubernetes

      Des conteneurs à Kubernetes avec Node.js eBook


      Télécharger le eBook complet

      Des conteneurs à Kubernetes avec Node.js eBook sous format EPUB

      Des conteneurs à Kubernetes avec Node.js eBook sous format PDF

      Présentation de l’eBook

      Ce livre a été conçu pour vous expliquer de quelle manière on peut utiliser des conteneurs et Kubernetes pour développer une pile complète. Vous apprendrez à développer une application de pile complète à l’aide de Node.js et MongoDB et à les gérer – d’abord avec Docker, puis avec Docker Compose et, pour finir, avec Kubernetes.

      Ce livre est basé sur la série de tutoriels Des conteneurs à Kubernetes avec Node.js disponible sur DigitalOcean Community. Les sujets traités sont les suivants :

      1. Créer une application Node.js à l’aide de Docker pour le développement

      2. Intégrer une base de données NoSQL à votre application Node.js à l’aide de MongoDB

      3. Gérer votre environnement de développement avec Docker Compose

      4. Migrer votre flux de travail Docker Compose vers Kubernetes

      5. Faire évoluer vos applications Node.js et MongoDB à l’aide de Helm et Kubernetes

      6. Sécuriser votre application Node.js conteneurisée avec Nginx, Let’s Encrypt et Docker Compose

      Chaque chapitre est conçu pour que vous puissiez progressivement faire votre construction à partir du début. Cependant, si vous connaissez un sujet ou si vous êtes plus intéressé par une section particulière, n’hésitez pas à passer au chapitre qui répond au mieux à votre objectif.

      Télécharger le eBook

      Vous pouvez télécharger le eBook au format EPUB ou PDF en suivant les liens ci-dessous.

      Télécharger le eBook complet

      Des conteneurs à Kubernetes avec Node.js eBook sous format EPUB

      Des conteneurs à Kubernetes avec Node.js eBook sous format PDF

      Si vous souhaitez en savoir plus sur le développement d’applications à l’aide de Node.js, consultez la section Node.js de la communauté DigitalOcean. Ou si vous souhaitez continuer à en apprendre plus sur les conteneurs, Docker et Kubernetes, nous vous conseillons de suivre le cours autoguidé Kubernetes pour les développeurs de pile complète.



      Source link

      How To Deploy a Resilient Node.js Application on Kubernetes from Scratch


      Description

      You may have heard the buzz around Kubernetes and noticed that many companies have been rapidly adopting it. Due to its many components and vast ecosystem it can be quite confusing to find where the path starts to learn it.

      In this session, you will learn the basics of containers and Kubernetes. Step by step, we will go through the entire process of packaging a Node.js application into a Docker container image and then deploying it on Kubernetes. We will demonstrate scaling to multiple replicas for better performance. The end result will be a resilient and scalable Node.js deployment.

      You will leave this session with sufficient knowledge of containerization, Kubernetes basics, and the ability to deploy highly available, performant, and scalable Node.js applications on Kubernetes.

      💰 Use this free $100 credit to try out Kubernetes on DigitalOcean for free!

      About the Presenter

      Kamal Nasser is a Developer Advocate at DigitalOcean. If not automating and playing with modern software and technologies, you’ll likely find him penning early 17th century calligraphy. You can find Kamal on Twitter at @kamaln7 or on GitHub at @kamaln7.

      Resources

      View the slides for this talk, or watch the recording on YouTube (coming soon).

      Transcript of The Commands and Manifests Used

      Be sure to follow along with the recording for an explanation and replace kamaln7 with your own DockerHub username.

      Node App

      1. Create an empty node package: npm init -y
      2. Install express as a dependency: npm install express
      3. index.js

        const express = require('express')
        const os = require('os')
        
        const app = express()
        app.get('/', (req, res) => {
                res.send(`Hi from ${os.hostname()}!`)
        })
        
        const port = 3000
        app.listen(port, () => console.log(`listening on port ${port}`))
        

      Docker

      1. Dockerfile

        FROM node:13-alpine
        
        WORKDIR /app
        
        COPY package.json package-lock.json ./
        
        RUN npm install --production
        
        COPY . .
        
        EXPOSE 3000
        
        CMD node index.js
        
      2. Build the image: docker build -t kamaln7/node-hello-app .

      3. Edit index.js and replace the word Hi with Hello.

      4. Re-build the image and notice Docker re-using previous layers: docker build -t kamaln7/node-hello-app .

      5. Run a container to test it: docker run --rm -d -p 3000:3000 kamaln7/node-hello-app

      6. Look at the running containers: docker ps

      7. Stop the container: docker stop CONTAINER_ID

      8. Push the image to DockerHub: docker push kamaln7/node-hello-app

      Kubernetes

      1. Get worker nodes: kubectl get nodes
      2. Create a deployment: kubectl create deployment --image kamaln7/node-hello-app node-app
      3. Scale up to 3 replicas: kubectl scale deployment node-app --replicas 3
      4. Expose the deployment as a NodePort replica: kubectl expose deployment node-app --port 3000
      5. Look at the newly created service (and the assigned port): kubectl get services
      6. Grab the public IP of one of the worker nodes: kubectl get nodes -o wide
      7. Browse to IP:port to test the service
      8. Edit the service: kubectl edit service node-app
        1. Replace port: 3000 with port: 80
        2. Replace type: NodePort with type: LoadBalancer
      9. Verify that the service was updated: kubectl get service
      10. Run the above command every few seconds until you get the external IP address of the Load Balancer
      11. Browse to the IP of the Load Balancer





      Source link