If you restart the rancher/server container from within rancher it sets the state to shutting-down in the database, and then the container stops and the state cannot be updated anymore. If you try and start the server again it will see the state is shutting-down and shut itself down again.
To resolve, from the command line start a new rancher/server container with the same port and database config (but a different name; or let docker pick a random name), go to the web UI and in the
Infrastructure/Containers list find your original rancher/server container and try to start it. It will fail (because the port is already allocated), but the state in the database will be updated. Then back on the command line,
docker kill the new rancher/server and start up the old one (make sure the name is the same).
That should be it! The rancher/server should successfully be running again.