Deploying an Isomorphic Go Web Application

With the automated end-to-end tests that we implemented in the last chapter, the IGWEB demo website now meets a baseline set of expected functionality. The time has come to free our Isomorphic Go web application out into the web. It's time to focus on deploying IGWEB to production.

Our exploration of Isomorphic Go production deployments will include deploying IGWEB as a static binary executable, along with static assets, to a standalone server (real or virtual) and deploying IGWEB as a multi-docker container application.

Deploying web applications is a vast subject, an ocean, worthy of the many books that are dedicated to covering this topic alone. Real-world web application deployments may include continuous integration, configuration management, automated testing, deployment automation tools, and agile team management. These deployments may also include multiple team members, fulfilling various roles in the deployment process.

The focus in this chapter will solely be on deploying an Isomorphic Go web application by a single individual. For the purpose of illustration, the deployment procedure will be performed manually.

There are certain considerations that need to be made to successfully prepare an Isomorphic Go web application for production use, such as minifying the GopherJS produced JavaScript source file and ensuring that static assets are transferred to the web client with GZIP compression enabled. By keeping the emphasis of the material presented in this chapter on Isomorphic Go, it is left to the reader to adapt the concepts and techniques presented in this chapter for their own particular deployment needs.

In this chapter, we will cover the following topics:

  • How IGWEB operates in production mode
  • Deploying an Isomorphic Go web application to a standalone server
  • Deploying an Isomorphic Go web application using Docker
..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset
18.119.103.204