nginx - nginx: [emerg] bind() to [::]:80 failed (98: Address already in use)
My case is different, I had to kill the running Nginx process to restart it.
Instead of
sudo systemctl restart nginx
I had to use:
sudo pkill -f nginx & wait $!
sudo systemctl start nginx
I fixed this by running:
sudo apachectl stop
It turns out apache was running in the background and prevented nginx from starting on the desired port.
On Ubuntu, run:
sudo /etc/init.d/apache2 stop