Подвязать доменное имя?
А то гуглится что должен быть порт только 80 или 443. 
Если хочешь, чтобы пользователю не приходилось писать порт - да, нужно обязательно 80 и 443 порт.
Просто у меня на серваке несколько сервисов и всем дать 80 порт не выйдет.
Выдай 80 и 443 порт какому-нибудь одному сервису, который будет уже на основе заголовка Host перенаправлять запросы на другие сервисы.
Обычно, в роли такого сервиса выступает nginx.
Поставь nginx, и настрой в нем вирталхост на перенаправление на localhost:3000.
так ты и свяжешь доменное имя и свое приложение на Nodejs