What is required to run CiviCRM on DigitalOcean?
I setup Drupal and CiviCRM on my Digital Ocean Droplet by hand, but you'll face this issue regardless of how you setup.  This answer is sufficiently long and complex that I'm setting up a complete guide on my wiki.

DO does not allow SMTP traffic on their IPv6 network.  As a result, PHP applications that normally succeed in sending email will be unreliable, slow or outright fail.  CiviCRM is one that can be especially challenging to configure for outbound email at DO.  Although the simple mail() function appears to work, I don't think it offers the control or performance you might need.  In my case I wanted to use Google Apps for Business to send my email.

The first thing you need to do is to set your hostname to a fully qualified domain name.  When you set your hostname to a FQDN, that will cause the DO system to create a PTR record in DNS for your host. Without a PTR record, many major email providers (Comcast/HotMail/Yahoo) will refuse to talk to your host and those messages will disappear into the void (check /var/log/mail.log). CiviCRM will report those messages as 'sent', but the recipient will never get it, not even in spam, because it never left your server.

You must setup an A record for your FQDN at your DNS provider.  The PTR record should be automatically setup by Digital Ocean.

dig foo.example.com
dig -x foo.example.com


Assuming you want to configure CiviCRM to use an external SMTP server such as Google Apps for Business (aka SMTP relay also known as smarthosting) you will suffer connection timeouts.  Some apps such as PHPMailer can be made to work with a hack using gethostbyname(), but the configuration for CiviCRM will only allow you to enter the hostname; and no permutation will work.  Instead, tell CiviCRM to use 'sendmail'.  Meanwhile sendmail is not actually installed.  Postfix can be installed as the MTA and you can configure Postfix to send mail to Google.  The 'hack' is to also bind Postfix to 0.0.0.0 so that it uses IPv4

With the PTR record in place, and Postfix installed relaying SMTP to your provider over an IPv4 network, and CiviCRM set to use 'sendmail' you can now use your CiviMail.