I’ve been using the Digital Ocean Virtual Private Server (VPS) host on and off for a few months now, and I must say, they are incredibly easy to use! First of all, their web UI is simple, easy to use, and dare I say, enjoyable to use. They have one, and only one, core service: Droplets. A Digital Ocean Droplet is the Digital Ocean term for UNIX-based VPS instances. Keep reading for more information about how the service works! I encourage you to sign up for them, and at the very least, give it a try.
NOTE: If you sign up for Digital Ocean using this link, you can get $10 of credit for free!
Operating System Images
When you’re provisioning a Digital Ocean Droplet, there are quite a few different Linux & BSD images to choose from. While the list of Linux distributions isn’t exhaustive, the images that are offered are listed below. There’s multiple versions of each image available, including 32-bit and 64-bit images for common operating systems like Ubuntu and Debian Linux.
Once you’ve selected an image to provision your Digital Ocean VPS from, you can choose an instance size, starting from 512MB of RAM with a single CPU, all the way up to 64GB of RAM with 20 CPUs. There’s quite an array of sizing choices here, so for many workloads, you won’t feel restricted. Pricing for the VPS instances is incredibly aggressive, with the lowest cost unit coming in at $5 per month, billed at less than one penny per hour. Wow!!
Digital Ocean enables you to provision your VPS instances across a wide array of global data centers. There are several regions available in Europe, including Germany, United Kingdom, and Amsterdam, and several North American data centers in New York, San Francisco, and Toronto, Canada. There’s even a region in Singapore, and one in Bangalore, India, however I didn’t seem to have access to that one in my account. The tile for the Indian region was greyed out.
Security for Digital Ocean Droplets
When you provision a Digital Ocean Droplet, you can upload your own SSH public key, or you can have them e-mail you a root password. Obviously, the latter option is less preferred, from a security standpoint. If you’re on Windows, you can use PuTTYGen to generate a public/private key pair. Once you’ve generated the key pair, all you need to do is copy / paste the OpenSSH public key into the window, give it a name, and you’re good to go!
One of the great value-add features of Digital Ocean is that they offer team management features. In other words, you can delegate access to VPS instances to multiple users who are collaborating on a common set of infrastructure. From a user interface perspective, managing a team is consistent with the individual user experience. You can simply invite team members to collaborate with the team, by plugging in their e-mail addresses. There isn’t any granular support for role-based access control. For example, you cannot delegate access to create VPS instances, but not delete them. However, I would argue that this would be excessively complicated for the service that Digital Ocean is offering.
One of the great things about Digital Ocean is that their Droplets support IPv6 natively. You can also check a simple box, and enable communication between multiple Droplets in a private network. That way, network traffic between the Droplets isn’t occurring over the publicly-routed Internet, increasing security and reducing latency.
You can use Cloud-Init to perform automated configuration management through Bash or Python scripts via a well-documented YAML configuration file. Backups can be achieved through an automated add-on feature that costs 20% above the price of your Droplet. If automation is your thing — and it probably should be — then Digital Ocean offers a comprehensive, well-documented API, including client Software Development Kits (SDKs) that help you to automate various aspects of the service.
My opinion of Digital Ocean is very high at this point in time. There are plenty of other VPS services out there, but Digital Ocean seems to take pride in designing well, simplifying the customer experience, and doing so at a competitive price point! Furthermore, they invest a lot of resources into developing incredibly detailed blog posts that describe how to perform various software installations and configurations. I’ve personally benefited from these resources on a daily basis, and I’m sure that I will continue to come across their excellent blog posts via Google searches regularly.
Digital Ocean Pros
There are tons of reasons to leverage Digital Ocean. Here are some of their top selling points, coming from my own personal experience. If you’re in need of a simple VPS provider, I am not currently aware of anyone who’s better than Digital Ocean.
- Flexible billing (use only what you pay for)
- Simple payment methods (credit card or PayPal)
- Incredibly low cost / barrier to entry
- High performance Solid State (SSD) storage
- Simple API key enables automation of the entire platform
- Beautiful, simple web user interface
- Support for team management of VPS instances
- Native IPv6 networking is available (optional)
- They have incredbly detailed, helpful blog posts covering all types of software
Digital Ocean Cons
While Digital Ocean is a fabulous service, they don’t get away without a few cons though. If I had to be picky, I’d suggest the following are limitations of their service. However, keep in mind that these don’t really detract much from the core, quality service offering they provide. I was just searching for some items to nitpick on, for the sake of objectivity.
- They occasionally run out of hosting capacity in specific regions
- They don’t support Windows virtual machines
- There’s no PowerShell module available for their API
- The .NET API is incredibly out of date on GitHub
- They don’t offer any PaaS services (to be fair, this isn’t their business objective)
This article originally appeared on https://trevorsullivan.net. Trevor Sullivan was not paid, or otherwise compensated for this review, either directly or indirectly. This is an honest and unbiased review of the Digital Ocean Droplet platform.