1) No, business logic should be kept in middle-ware, reducers and selectors.
2) Container component is really every component created by connect HOC (everything connected with the store). As said in point 1 it is not a place for business logic.
Bigger answer related to Redux architecture
When using Redux the convention of container->presentation components is not really needed. You should focus on direct connecting components with the store. So instead of choosing which components are connected, are containers, and which are not, are presentation ones, you should focus on delivering the needed data directly.
Preferred is to avoid passing props from parent components and use it when no other way is possible. An example of such avoiding passing props is List -> Element components relation. In the approach with container component, the store would be connected to the List(container) and List would pass all the data to every Element(presentation) component. In the approach without container->presentation, you would send to the Element component only id, and Element component would connect to the store, in order to take obligated properties. Therefor sending props is here reduced to the minimum, and because both components are connected to the store, you can not distinguish them on container->presentation.
Additional notice about non-redux architecture
If application doesn't have state management tool like redux, then using container->presentation component approach is very reasonable. This is because the business logic stays only in a part of the program, and exactly I mean containers components, and presentation components can be pure and stateless. Thanks container->presentation segmentation an application has clear separation between state modification and state purity.