Why are the port options not available in docker desktop (windows 10)?
The Docker Desktop is giving the option to publish ports to the container ports that have been "exposed" in the image. Exposing a port in an image is documentation from the image creator to those running the image, to know what port the application inside the container should be listening. And in this case, it's Docker Desktop that's running the image and looking at that documentation.
More details on "expose" can be found in Docker's documentation: https://docs.docker.com/engine/reference/builder/#expose