:construction: Learn the craft of "DevOps" (Developer Operations) to Deploy your App and Monitor it so it stays "Up"!
Learn the craft of "DevOps" (Developer Operations) to easily/reliably deploy your App and keep it Up!
You should learn more "advanced" DevOps if:
"DevOps integrates developers and operations teams in order to improve collaboration and productivity by automating infrastructure, automating workflows and continuously measuring application performance." from: "What is DevOps?" by RackSpace
Everyone that wants to seriously consider/call themself a "Full Stack" Developer must know how to deploy, secure and monitor their app on their chosen infrastructure.
Over the years we @dwyl have deployed/managed Apps, both our own and those of our clients, on a wide variety of infrastructure and platform providers.
Most of our Apps have been deployed to Amazon Web Services ("AWS")
We have several clients who use (and love) Heroku e.g: https://www.ellenmacarthurfoundation.org
For the National Health Service (NHS) in England, (who have a major contract with Microsoft) we deployed https://www.healthlocker.uk to Azure.
We have clients who still own their own "Bare Metal" Servers.
We have produced a guide for each of our most-used infrastructure/platform providers:
If you would like to see a guide for a different service provider, please open an issue with your suggestion(s): https://github.com/dwyl/learn-devops/issues
Deployment is what you do with your app once you have built, tested and documented it.
If you are unfamiliar with Test-Driven Development (TDD),
please see: https://github.com/dwyl/learn-tdd
Next you should be proficient with Continuous Integration. For that we recommend using Travis-CI, see: https://github.com/dwyl/learn-travis
While this tutorial has focussed on using Linode, we @dwyl have experience of using several infrastructure providers:
if you have a question specific to using Linode or one of the other "cloud" providers, please open an issue and we will attempt to help!