So for all your questions! Yes you can do them on DigitalOcean, however it will take you some manual work because you need to install everything yourself . Think about mysql, php, nginx, etc.
Now for third parties you are flexible as well op DigitalOcean. You can install redis if you wish and run a queue on there or you can use a seperate server that will run Redis for you. For example let's encrypt should now be done by hand. There are a lot of scripts out there that you can run and that will all just work fine as well. So with some research you have your server up and running in no time!
Now I do want to propose an alternative. Ever heard of Laravel Forge? Laravel Forge is exactly what you're looking for. From the panel you can create servers at DigitalOcean (or other parties) it will provision the server for you will everything you need to run any PHP application. By default it installs php, mysql, nginx, redis, etc. From that panel you can create websites and host multiple websites on the same server as well. It will get you a let's encrypt certificate with just two clicks and it will refresh it for you as well! Next to that you can create queue and manage them as well.
If you want to know more about Laravel Forge you can either visit the website or watch the series about it here on Laracasts: https://laracasts.com/series/learn-laravel-forge