Deployment
- Reliability
- Having
development,testinganddeploymentenvironments identical is reliable.- Operating System (its architecture, version)
- tooling ([platform-specific] packages)
- dependencies
- binaries
- etc.
- It is much more reliable, rather than if you develop in one OS, but deploy to another.
- Having
- Ease and speed
- It allows to streamline and automate development processes, such as:
- setting up a project locally (for development / testing)
- testing a project in CI
- deployment to production
- It allows to streamline and automate development processes, such as:
All environments, in which the code is developed, tested and deployed to for production, should be identical. This minimizes the risk of the app not working because of any environment-related differences.
- Environment identity can be represented and shared across environments by:
- .devcontainer.json
- Dockerfile
- docker-compose.yml
Deployment (shipping) workflow
...