Yann Mulonda
1 min readNov 27, 2021

--

So this will depend on how your Infurstatcure is designed.

  1. if you’re deploying your nodejs app directly from a web server, you should be using nodejs runtime like pm2 or forever to run your app. Depending on what build tool you’re using (Jenkins, Bamboo, TravisCI, Github Actions, etc) — Then in the case of GitHub Actions, you can add your server as a “runner” on GitHub action and set up your Github action Jobs to define your ci/cd steps which will run directly from your server. check this how to setup ci/cd.
  2. if you want to run your Nodejs using docker, I’ll recommend setting up a Kubernetes cluster on your server, build and push your Docker images to whichever docker registry works for u, and set up a Kubernetes deployment to run your app docker image. then set up your GitHub actions to deploy Kubernetes deployment on your server runner in ci/cd fashion — check out How to Deploy to Kubernetes & Heroku using Docker
  3. if you’re deploying your app on the cloud, check out — Deploying to Google Cloud Platform using Docker, Kubernetes, Terraform, and GitHub Actions

--

--

Yann Mulonda
Yann Mulonda

Written by Yann Mulonda

Co-Founder & CIO @ITOT | DevOps | Senior Site Reliability Engineer @ICF󠁧󠁢󠁳󠁣󠁴 | "Learning is experience; everything else is just information!”

No responses yet