Learn more about deploying your web application in the hosting, which also covers additional details about hosting static web content and other types of assets on a hosting provider.
Consider setting up a pipeline that automates the testing and deployment of the backend. Such a system can improve the overall health and resilience of your application.
Build pipeline
The build pipeline for your backend covers the entire build, test, deploy, and promote lifecycle of your application. Using a build pipeline that includes continuous integration (CI) and continuous delivery (CD) accelerates releases by continuously testing and deploying new application versions. The rigorous execution of tests improves reliability, and automation reduces the overall risks caused by manual steps in the process.
The build pipeline is coupled with your type of application, architecture, and deployment pipeline. Most popular CI/CD systems include the functionalities necessary to set up an end-to-end build pipeline. For example, Cloud Build offers CI/CD capabilities for serverless applications on Google Cloud. However, more advanced use cases and architectures may require additional configuration and tooling.
Continuous Delivery and Continuous Integration
Continuous delivery (CD) automates code release to staging or production environments. It is usually part of the end-to-end build pipeline that integrates with the code repository to trigger tests, including continuous integration (CI) automatically. If all tests pass successfully, the CD system is triggered to deploy a new application version. The application could be deployed to a staging environment first, where additional tests may be performed before it is promoted to the production environment.
Beyond your application's code, this could also apply to any configuration changes, database schema changes, version upgrades or any other maintenance tasks.
Learn more about the principles behind continuous delivery (CD) and the best practices to follow when setting it up as part of your pipeline.
Deployment automation
As a next step, automating your application deployment to the testing,staging and production environments can reduce the risk of issues introduced by manual intervention and make your application more resilient. This part of the deployment pipeline taks the output of the continuous integration (CI) system and prepares the target environment, runs any deployment-specific tests and finally deploys the application.
Learn more about the principles behind automating your deployment and the best practices to follow when setting up your own pipeline.