How can we automate Ubuntu virtual machines for release engineering? (+ Azure cloud, Git, WordPress, Nginx)
-
We'd like some ideas on how to automatically configure Ubuntu virtual machines as staging servers for our application, test out the staging code, and then script deployments to the production server (rather than a person installing everything on the staging server via ssh, copying files over, hand-editing configurations, etc.) We can move to AWS if need be but we're okay on Azure for now --- we basically get an Ubuntu VM with SSH access on Azure, so it shouldn't be too different from others ways of configuring linux-based servers. What we want a script to do is basically: Go "in" to the fresh virtual machine via SSH Setup nginx, MariaDB, php, other apt-get installs Deploy a copy of our wordpress code from a Git repository Import a sample staging database into MariaDB with wordpress config info and other information Use the cloudflare API to setup a DNS hostname for the server (optional, can do this manually if needed) Let the person testing the new code poke around Then if it works fine we want to automate pushing the new code in Git to our production server without manually editing wordpress config files and so forth. But that's a bit separate from the question of setting up the staging environment through a script The tools I've come across so far are these Chef Puppet Vagrant Salt Stack Ansible Juju Before diving right into them I was wondering if someone has a 10,000ft view of what is applicable to our needs.
-
Answer:
I've also come across this problem. If you don't need hardware accelerated 3D graphics( or OpenCL, CUDA, etc.) then Vagrant is probably best.
Michael Schmatz at Quora Visit the source
Other answers
I got some answers here: http://serverfault.com/questions/510000/server-configuration-automation-ubuntu-on-windows-azure-wordpress-nginx-gi The answer seems to be to look into Puppet/Chef and into Capistrano/Fabric
Firas Durri
Related Q & A:
- How can I apply for Post Doc in Mechanical Engineering?Best solution by Academia
- How can I use GIT in my own server?Best solution by Stack Overflow
- How can I do nginx rewrite?Best solution by Server Fault
- How to create some virtual machines in linux?Best solution by howtogeek.com
- How can I use an Azure reserved IP?Best solution by mythoughtsonit.com
Just Added Q & A:
- How many active mobile subscribers are there in China?Best solution by Quora
- How to find the right vacation?Best solution by bookit.com
- How To Make Your Own Primer?Best solution by thekrazycouponlady.com
- How do you get the domain & range?Best solution by ChaCha
- How do you open pop up blockers?Best solution by Yahoo! Answers
For every problem there is a solution! Proved by Solucija.
-
Got an issue and looking for advice?
-
Ask Solucija to search every corner of the Web for help.
-
Get workable solutions and helpful tips in a moment.
Just ask Solucija about an issue you face and immediately get a list of ready solutions, answers and tips from other Internet users. We always provide the most suitable and complete answer to your question at the top, along with a few good alternatives below.