Packaging software and its dependencies into isolated, portable units that run consistently across different computing environments.