Docker Container Environment VS Non Docker Environment

This is very interesting question for the professionals. Recently I have worked with Amazon Web Services (if someone of you knows about AWS cloud), I have created a cloud in AWS hosting two Availability Zones, and each Availability Zone have 2 subnets (public and private). The goal was to have secure environment and also application should be highly available 24/7. Moreover, I have setup Auto Scaling group on my cloud, which launches new instances automatically when any server goes down (in any Availability Zone/subnet), and launch application on it and my cloud becomes complete and healthy again.

Above case is for Amazon Web Services only, now I wonder how a locally hosted (server inside our office) can be managed to achieve similar goal (regardless of internet connection and networking quality or throughput). We have to setup a highly available an secure environment in our office which will run our Node.JS application.

I just learned about Docker Container, which raised a question in my mind that can Docker Container assist me to achieve the goal? We can not afford down time, or slow performance, and hurdles on deployments (regardless of internet connection line, leave that for now).

I’m looking for solution for two forms: 1). When Node.js application is simply configured on the linux/ubunto server. 2). When we use Docker Container strategy.

For both cases I would love to know (keeping in mind Node.js is single threaded so need to think about that also):

i). Steps required to make it highly available environment ii). How can it recover from any disaster (when due to some reason the server goes down). iii). Handling heavy traffic in rush hours for both forms of deployment. iv). How security features can be applied on both forms. v). How DDoS can be prevented for both forms differently. vi). How deployment of newer version of application can be managed easily with minimum down time.

Submit an answer

This textbox defaults to using Markdown to format your answer.

You can type !ref in this text area to quickly search our full set of tutorials, documentation & marketplace offerings and insert the link!

Sign In or Sign Up to Answer

These answers are provided by our Community. If you find them useful, show some love by clicking the heart. If you run into issues leave a comment, or add your own answer to help others.

Want to learn more? Join the DigitalOcean Community!

Join our DigitalOcean community of over a million developers for free! Get help and share knowledge in Q&A, subscribe to topics of interest, and get courses and tools that will help you grow as a developer and scale your project or business.

Hi @mhannan313 how did you end up achieving this? I have exactly the same need as those you detail above, would appreciate tips or sharing your experience :)

This seems like a special request, I suggest you employ or freelance someone to do this for you as it seems to be quite a big job.