Occasionally it's useful to assign one or more ports manually vs using the defaults. Doing so can solve port availability/permissions issues or accommodate running more than one ember instance at a time.
To have ember-cli attempt to identify and assign an available port, use:
ember serve --port 0
Per ember help: "Pass 0 to automatically pick an available port". (In a terminal, type ember help).
To run more than one ember site at the same time, each needs its own server and live-reload ports. A simple approach: in separate Terminal windows navigate to each instance and use the following to launch them with their own ports:
ember serve --port 0 --live-reload-port 0
If you get an error about availability or permission in any of these cases, enter the following python script at your Terminal prompt to identify an available port:
python -c 'import socket; s=socket.socket(); s.bind(("", 0)); print(s.getsockname()[1]); s.close()'
Use the results to specify ports you now know to be available:
ember serve --port <known_port_1> --live-reload-port <known_port_2>