Is a Pod can running multi different app containers?

I am watching a video of service.

I see the Pod have several containers running, and use the different ports.

whether a Pod can expose multi port for different app containers?

Yes. A pod can run multiple containers which each have ports. For example, health checkers, logging sidecars, admin consoles, etc.

so do they need different services (nodeport or clusterIP) ?