No matter what kind of plant you want to grow in a container, the soil must drain rapidly. Buy a potting mix
for this purpose. It drains faster than a garden mix. You can mix in some compost, and even worm castings, if you wish, but whether you do or not, definitely add about 1/4 perlite to the mix. You want 3 parts potting mix to 1 part perlite. You can toss in some sand if you like, but it isn't really necessary. The perlite will do the job.
You can successfully grow your tomatoes, even full-size indeterminate types, in a 5 gallon bucket with holes in the bottom. They will need support, though, so plan ahead for that. Tomato cages like you buy in the stores are generally too short for full-size tomato plants. I only grow cherry tomatoes, and the year before last, they grew to at least 6' tall, maybe taller.
You could use larger containers, which I do. I find that gives a large plant more stability, so it's less likely to fall over in a wind. A larger container also gives me room to provide a good support system around the plant. My containers are just large plastic pots I got for free from a local nursery. They're about 20" across and 20" deep, maybe a bit bigger.
"Isn't it enough to see that a garden is beautiful without having to believe that there are fairies at the bottom of it too?" - Douglas Adams