do-release-upgrade, the initial question will be about starting an additional ssh daemon on a different port. It’s always a good idea to answer yes to that as it will give you a way back into the system if something goes wrong in the upgrade process. Though you should be able to connect through the DigitalOcean control panel’s console if all else fails.
You might be asked to “Disable SSH password authentication for root?”
Make sure you answer no unless you have set up SSH keys for the server.
The rest of the questions during the upgrade process are related to specific configuration files. They depend on whether or not you made local changes to the file. So this will be different for each system. The only way to proceed is on a case by case basis.
You will be offered the chance to investigate the difference between the file as currently on the server and the version to be installed:
Configuration file '/etc/sysctl.conf'
==> Modified (by you or by a script) since installation.
==> Package distributor has shipped an updated version.
What would you like to do about it ? Your options are:
Y or I : install the package maintainer's version
N or O : keep your currently-installed version
D : show the differences between the versions
Z : start a shell to examine the situation
The default action is to keep your current version.
*** sysctl.conf (Y/I/N/O/D/Z) [default=N] ?
The default is to keep your currently-installed version. In most cases that is what you will want, but it’s always a good idea to look at the diff and see what has changed.
In general, before doing a full release upgrade on a production server I suggest testing it first. Take a snapshot of the droplet and create a new one based on it. Run through the upgrade process on it. Then you can investigate any breakage on the test droplet before having to go through it on production.