Hello Everyone,
I’m new here on Digital Ocean. Due to very good reviews & amazing service provided(along with hassle-free letsEncrypt ssl cert) by Digital Ocean I’ve decided to shift my website from Hostgator’s shared hosting to Digital Ocean’s VPS. I’d like to clearify that this is my very first time setting a server by myself on a VPS as I’m more of a Front-End guy & mostly just work on UI. I am following up the tutorials provided by the DO community(Which are btw very well explained & easy to follow…Ty DO for that!) I’ve opted for $5 plan(as there’s not much traffic right now)
So, right now I have a magento based Ecommerce site which was getting hosted on Hostgator. I had a Cpanel there which made things easy. I’ve got the whole backup of the site with me. I so far understand that I’ll have to first install LAMP stack which I have done already, and next I’m gonna setup VestaCP which I recently heard about that’ll provide me Control panel with built in manager for website, email, database & DNS functionalities. Also, it’ll allow to achieve high performance by utilizing the resources in better way.
Now my major concern is Two things- Performance & Security. Please tell me if what I’ve planned is alright? & what else I should to ensure better performance & security or if not then what would be the best approach for me here?? Also, I don’t know what all files from backup i need to upload & where exactly.
Also, currently I’m dedicating a whole droplet individually for this website, maybe in future I would host one more site…Will it be alright??
I would appreciate any inputs you people could provide.
Thank you very much in advance :)
This textbox defaults to using Markdown to format your answer.
You can type !ref in this text area to quickly search our full set of tutorials, documentation & marketplace offerings and insert the link!
These answers are provided by our Community. If you find them useful, show some love by clicking the heart. If you run into issues leave a comment, or add your own answer to help others.
Sign up for Infrastructure as a Newsletter.
Working on improving health and education, reducing inequality, and spurring economic growth? We'd like to help.
Get paid to write technical tutorials and select a tech-focused charity to receive a matching donation.
@praveenkaushik
First off, welcome to the DigitalOcean Community :-).
Shared .vs. VPS
DigitalOcean provides un-managed Cloud VPS’s, which differ quite a bit from Shared Hosting in that you will be responsible for managing the VPS, installing the LAMP or LEMP Stack, tweaking/tuning, updating and upgrading software, handling security, etc.
Since you’re provided with a barebones VPS, there’s not a control panel installed by default, though you do have the option of installing one. You can install cPanel (which carries a monthly fee) or a free alternative, such as VestaCP (which works pretty well, from my experience with it).
Performance
Since you’re wanting to run Magento, I would recommend at least a 1-2GB Droplet (2GB would be my personal recommendation) instead of a 512MB.
The reason for this is because unlike shared hosting, you need to factor in RAM that will be used by the services you’re running (i.e. Apache/NGINX, PHP/PHP-FPM, MySQL/MariaDB, etc), not just the applications you’re running.
The above would be just as true if you were running WordPress + WooCommerce. You simply need more resources to run heavier applications, otherwise you risk running in to OOM (out of memory) errors, which will ultimately lead to services crashing/failing.
As for performance overall, while stock software installations will perform decently well, in most cases, ultimately how well the software performs will depend on how you tweak/tune it’s configuration.
Performance tuning is much like security, it’s ongoing :-).
…
Security
When it comes to security, the basics apply to all situations, i.e.
sudo
user, disableroot
logins, use unprivileged users for serving content;chmod
755 for Directories andchmod
644 for files;…
DigitalOcean Guides
…
DigitalOcean Tutorials
The link below will provide you with a search box where you can input anything, such as:
… and it’ll return results for your query.
https://www.digitalocean.com/community/tutorials