Where should I store/run my server? /opt/?

March 11, 2016 1.6k views
MEAN Getting Started Ubuntu

I've just set up my droplet according to this MEAN.JS tutorial and configured to use a non-root user per this tutorial. The first says that if I already have an application build on the MEAN stack (I do), I should git clone it into /opt/. This of course causes fatal: could not create work tree dir 'visigraph'.: Permission denied, since I'm not running as root or sudoing.

Now of course I could just sudo it, but then I believe I would also have to run the server as root, which is obviously bad from a security standpoint. So is /opt/ just the wrong place to run my server out of? Or should I just chown the cloned project dir? What are the security implications? I've never dealt with setting up the permissions side of a server, and am not familiar with what each of the root dirs in Linux are intended for.

1 Answer

The great part is you can really run it from wherever you like, it just depends on some tweak to configuration. You could change permissions to run it in /opt, or you could have it run from /home/user instead and change the configuration to have it recognize it is stemming from there. It all depends on how you want to do it!

Me personally, I don't like running my node.js applications from /opt. I like running things from my user's HOMEDIR or somewhere within /var

Hope it helps,
Jason Colyer
DigitalOcean Platform Support Lead

Have another answer? Share your knowledge.