Best Practices for Staging and Development Sites

-setupbest practicestaging

I am new to magento and have been working a my first site and it is now ready to go live. I have been advised that once live to also build a staging or development site so that i can in the future work off that before putting any new changes to my live site.

Can i ask what are the best practices in setting this up? My web hosting has said they can offer to set it up within a sub directory of my existing domain but it will just be a copy of the files and database (so doubling my required disk space) and i would need to manually move and copy the files and database info. Is this the only way?

I did see one article but it required a virtual server to store the test site on which i don't have or have any knowledge in setting up

Best Answer

At least you should have a staging server with the sameconfiguration your live site have. This is to prevent server config issues.

Also, its not a good idea to have it in the same server since both sites will be using the same resources to run, which might slow down your live site.

A common environment setup might be 2 separate servers, one for PROD and one for staging/QA with the same setup, maybe provisioned with Ansible and/or Vagrant.

For deploys, you might want to use Jenkins to automate things, and as a hosting provider, i personally like Amazon. A medium to large instance with RDS and Elasticache is pretty fast in my experience.

I created this VM to develop Magento, you might also give it a try: https://github.com/miguelbalparda/vm

Related Topic