Student SSH access directly to container

To answer some of your questions:

  1. You would be able to SSH directly to the container, provided that it is running the SSHD service and the port is mapped. Each container needs it's own port open on the host to be able to SSH. There may be more complicated options using SystemD and custom logins, but you can definitely SSH.
  2. You can configure containers with volumes for persistent storage, and if not told to they are normally just 'stopped', not stopped & removed. So yes, they can be persistent.
  3. Actually, depending on how the container is run, it might not be! Giving someone root access in a container can be pretty much the same as giving them root access on the host - there's bound to be other answers on here about that.
  4. Centos has an official container image, it'll be centos:7 or centos:8 most likelyy.

Another option is to look into whether some of the big cloud providers can do education accounts to allow access to a capped set of resources? This way students could deploy an environment pre-configured in the cloud and access it from anywhere (whilst also learning some cloud skills!). I'd expect all of the big 3 (amazon/google/microsoft) to have something available.