Objective:
Streamline web development on a machine with multiple operating systems and environments (some of which are better than others).
Background:
I have a windows machine constantly crunching numbers on windows only engineering software. Everything else I use a computer for is on an a linux desktop VM or an ubuntu server that is always on. I'm setting this machine up for web development (which I used to do predominately from a linux laptop) and am looking for an effective means to develop without redundantly storing files and installing software. Ultimately I intend on having my server, serve private websites internal to my network. This means it will have rvm, ruby, git, passenger, nginx, and an assortment of other applications. I began setting up my linux desktop to develop and found my self ready to repeat software installations and configurations. Once that's done I was considering a 3rd round, on my windows machine, and that's when I stopped; I loathe using windows for web development and am thinking that I can avoid a 3rd round of configuration if I do things properly, maybe even a second round!
My Proposed Solution:
- Install the necessities on my server.
- Mount (server and linux desktop) a location on the windows host where all my source code will reside.
- Manage source control and physically serving through ssh on server.
- Edit files (code, images, files,...etc.) on any of the 3 machines with applications from any machine... Sublime text, GIMP, Inkscapte,...etc.
Concerns:
- Files are physically accessible from my windows machine without having to boot any VM's.I feel like this is an opportunity to introduce the potential for corruption. Git, ruby,...etc. will all be on a server that may not be active while editing files. Not to mention meta-data and other temporary files are handled differently between OS programs.
- Challenging for my windows or linux desktop to see server's localhost? I'm sure this can be worked out considering it's setup with a bridged adapter and easily communicates with my network.
- Managing host files from a VM and issue? I move things around and edit quite a bit but not git or programing code
- My production server housing development work? I like pushing things from my development machine to a production server... What I'm proposing going to be okay?
Direct Questions:
- Are my concerns valid?
- Should I set this machine up as I've proposed?
- Any ideas on how to set this machine up without having to duplicate several installations, configurations, and not be constrained by a single OS?
Most Importantly:
Thank you for your mind share and consideration! I look forward to any guidance. Thank you!
Bookmarks