As aplicações conteinerizadas compreendem código de software empacotado apenas com as bibliotecas do sistema operacional (OS) e dependências necessárias para executá-lo, criando unidades ágeis e executáveis (ou seja, contêineres) que podem rodar em praticamente qualquer infraestrutura de TI, desde data centers locais até ambientes de nuvem híbrida e multinuvem.
O CaaS situa-se entre infraestrutura como serviço (IaaS) e plataforma como serviço (PaaS) no stack de computação em nuvem, fornecendo um equilíbrio entre o controle oferecido pelo IaaS e a simplicidade do PaaS. IaaS é um modelo de nuvem fundamental, permitindo que as organizações virtualizem recursos de computação, rede e armazenamento, e executem outros serviços na nuvem, como software como serviço (SaaS) ou PaaS. Plataformas IaaS permitem que as equipes personalizem completamente os componentes, desde stacks de aplicações até SOs, mas o fornecedor gerencia os recursos de computação e o hardware.
O PaaS, por outro lado, funciona no nível do stack de código, permitindo que os usuários se concentrem em dependências de aplicativos de nível superior (por exemplo, tempos de execução de linguagem), mas elimina o controle do usuário sobre o SO e limita a portabilidade entre ambientes de implementação.
O CaaS coloca o controle de volta nas mãos dos usuários, facilitando a virtualização e a personalização do sistema operacional e permitindo a implantação específica do contêiner.