The application I used for learning this process was TakeNote, a web-based note-taking app I'm working on.
#Linode docker tutorial manual#
You will also see this as continuous delivery, which is similar but requires a manual approval before the deployment process runs. Continous deployment/deliveryĬontinuous deployment is the process of deploying that code frequently through an automated process. Continous integrationĬontinuous integration is the process wherein developers frequently commit to the main source (usually master branch) and ensure quality control through automated tests. What is CI/CD?ĬI/CD stands for continous integration/continuous deployment. If nothing about Docker, images, and containers makes sense to you yet, don't worry.
#Linode docker tutorial how to#
So if you have a small project (in this case, Node.js project) and you would like to get an idea of how to automate your deployment so that what's on Git is up to date with what's in production, this article might be of interest to you. In order to do this, I had to get familiar with CI/CD. I also knew I didn't want to orchestrate a huge Kubernetes cluster or Docker swarm or server fleet with pods and agents and all sorts of complications for my small web application. One server became many servers running behind load balancers, and version control and git became commonplace.įor a personal project, I had a custom setup, and I knew I wanted the ability to deploy my website to production with a single action: merging code into the master branch on GitHub. Websites became more complex and required build steps before going to production. Things have changed quite a bit over the past two decades. They were different times, simpler times.
You had a single shared server running Apache and you could FTP in by typing into the URL bar, entering your username and password, and moving your files to the host. I built my first websites in the late '90s, and it was pretty simple to get them up and running.