I'm running TSD server on fedora but centos will work too. TSD server is in the docker container so brings all it's dependencies with it. You just need to install docker support for centos.
Note that self hosted TSD server does not have training so you are still dependent on them to train the matrix and you to update the matrix when you update the server.
You want to catch new version (with new training etc) you
git pull
sudo docker-compose up --build -d
This makes sense if you have your server and you administer your server and know what's going on. Instructions on github are pretty clear for anyone capable of maintaining a server. If not it's much cheaper to just use the provided service by TSD team, there's free option + the option for $$ is not that expensive.