What is the minimum time one should spend in a post-doc?
Postdocs are cheap labor. Furthermore, unlike grad students, they show up already fully trained and ready to do productive work. This is all a wonderful deal for the lab that the postdoc is working for.

If a postdoc is applies for a job after 7 months, they will probably still have been in the postdoc position for about a year before they actually leave. This is perfectly reasonable. Tenure-track jobs are so scarce and hard to get that any reasonable supervisor's reaction in this situation should be, "Wow, that's wonderful that you lined up a tenure-track job so quickly!"

In any case, this will presumably come up when the postdoc asks the supervisor for a recommendation for the job. If there needs to be a discussion of how long is long enough, the discussion will happen then.


  Three years give sufficient opportunity to get some work done, without moving to a new country every year.


My perception is that 2 years in a single postdoc used to be standard. It may now be common to do 2 or more postdocs, each of 3 years or more, but that's an expression of market conditions, not of any moral obligation that the postdoc owes to the supervisor.