bom dia!
A resposta curta é: na grande maioria dos casos, não vai dar problema nenhum rodar o mesmo container em distros diferentes, como Ubuntu em dev e CentOS em produção.
Quando dizemos que o container usa “pedaços” do kernel do host (UTS, namespaces, cgroups etc.), isso não significa que ele dependa da distro, e sim do kernel Linux. O container leva junto o userland (bash, libc, libs, binários…), mas não leva o kernel. Quem fornece o kernel é sempre o host.
O ponto-chave é que, desde que:
- o host esteja rodando Linux
- e o kernel seja compatível com os recursos que o container precisa
o container vai funcionar do mesmo jeito, independentemente de ser Ubuntu, CentOS, Debian, Alpine etc.
Por isso é totalmente comum (e esperado) desenvolver em Ubuntu e subir em produção num CentOS, RHEL, Amazon Linux, e afins.
Onde poderiam aparecer problemas?
Isso só costuma acontecer em cenários mais específicos, por exemplo:
- kernels muito antigos em produção, sem suporte a alguma feature usada pelo container
- uso de módulos de kernel ou chamadas muito específicas (casos mais avançados)
- diferenças de arquitetura (ex: amd64 vs arm64), o que já é outro assunto
Mas para aplicações comuns (APIs, backends, workers, bancos, etc.), isso não é uma preocupação prática.
Abçs.