Also a decent method of experimenting with different plants, and proximity between different types.
I've actually had really good luck in the past with tomatoes, peppers and even butternut squash in containers, just need to use a fairly large containers (e.g. 18"-24" in diameter - 15 & 25 gallon nursery pots) for each plant and use an appropriate soil(s) (potentially layering a water-retaining mix layered on the bottom under a lighter easily draining soil mix on top).
The soil and labor of swapping the soil in the pots every year can be a negative, but the lack of needing to weed since the soil can be weed-seed free and the top can be sufficiently above ground level (e.g about 18" to prevent weed seeds from blowing into the container) can offset some of that labor. So I'd say containers can be a great way to experiment with smaller quantities of plants (e.g. under 50-ish). Above that it probably makes more sense to switch to either in-ground or large raised beds which can be easier to sustain over the long term with the help of appropriate mechanization.
If legal to do so in your area, rainwater collection can also offset a fair amount of water to be captured and retained for irrigation purposes (depending on average precipitation rates for your region). In fact in some areas getting sufficient water storage capacity is the larger problem. For example the average precipitation is over 4 feet of rainfall annually in my area - however, most of it comes as winter rains.
So like most things related to agriculture, the ROI is going to vary by method, region and overall approach.