Put your objects in the correct scope so they live as long as you want them to. This is an important principle for C++ code in general, not just for using resource objects like threads. You need to understand when objects' constructors and destructors get called, and what they do.
Your Server object should be created in main(), before the main loop begins.
The Server's sf::Thread should be a member variable that gets initialized in the constructor and launched in a method, NOT a local variable that gets created, initialized, launched and destroyed all in the constrcutor.