I didn’t face the issue with Docker desktop, but with Kubernetes pod. When checked the logs of container the error was Eaccess, not permission, cannot bind to port 80. It was an issue because ports below 1024 are privileged.
I didn’t face this issue in docker desktop, may be because docker desktop removes the privileged port restriction (Reference)
So had to add few more lines to docker to fix it:
# switch user
USER root
RUN apk update
# install set capability lib
RUN apk add libcap-setcap
# update capability
RUN setcap 'cap_net_bind_service=+ep' /usr/local/bin/node
# switch to non root user
USER nextjs
And it will fix you issue
Cheers and Peace out!!!