We use docker so for us is really easy to replicate an environment on our PCs and Mac.
And we usually have 4 of them:
development is what you have on your local machine
stage: not stable, built with the last contributions from git
QA: same data as production
production
QA is really important, as we usually clone the filesystem and database of production and use this environment to test what will happen when we build the backend with a Git tag. We can update QA with the tag, run tests, have some people log in to check if everything is ok then we can rebuild the container for production.
I know some companies name the environments differently, so Stage is similar to production and QA is the unstable env. Some others use names like "pre production" or "acceptance" for the last env before production.
It is however important to have at least 3 environments not counting the dev one
We use docker so for us is really easy to replicate an environment on our PCs and Mac.
And we usually have 4 of them:
QA is really important, as we usually clone the filesystem and database of production and use this environment to test what will happen when we build the backend with a Git tag. We can update QA with the tag, run tests, have some people log in to check if everything is ok then we can rebuild the container for production.
I know some companies name the environments differently, so Stage is similar to production and QA is the unstable env. Some others use names like "pre production" or "acceptance" for the last env before production.
It is however important to have at least 3 environments not counting the dev one
thanks for sharing.