From Central London very few. I believe Silversea Cruise call at Tower Bridge from time to time. However, there are a large number of cruise lines which sail from Dover and Tilbury which are not too far off and are well served by road and railway. A little further off is the port of Southampton which is most served by a large number of cruise lines. It, too, has good links with London by road and rail.
Remember that the UK is a small country and distances between centres of interest are never too far away.
I hope this helps.
Large cruise ships cannot navigate up the River Thames into the port of London however a few smaller ones do. The Marco Polo occasionally leaves from Tilbury but this is only occasionally. Dover and Southampton are the best cruise departure ports in the UK and serve the ships of Cunard, Royal Caribbean, Princess, P&0 and NCL with cruises to the Mediterranean, The Baltic States, Scandinavia, Canary Islands and the Caribbean. Some other cruise lines also use these ports on an occasional basis such as Costa, MSC, AND Celebrity. Southampton is the departure port for Trans-Atlantic crossings to New York on Queen Mary 2. Southampton is 90 minutes from London by train and Dover about 75 minutes. Coach services also run from London however journey times are quite a bit longer. I hope this helps you plan your vacation.