If i understand what you want to do, you want a subdomain to use instead of the port 3000, for the subdomain to work you need it to listen on port 80, and proxy what ever comes to port 3000.
server {
server_name sub.example.com;
listen 80;
location / {
proxy_pass http://localhost:3000;
}
}