Eu gosto de colocar aplicativos em contêineres porque:
- a instalação é mais fácil
- você pode dividir facilmente a configuração, o aplicativo principal e o banco de dados
- mais fácil mudar para um banco de dados diferente
- se você estragou tudo, apenas exclua o contêiner principal, vincule seu banco de dados e sua configuração a ele e você estará bem novamente
- O gitlab é executado em seu próprio ambiente separado
- isso também oferece vantagens de segurança
Freqüentemente os programas são muito complicados de serem instalados (eu ainda não instalei o GitLab por conta própria, apenas usei os containers) e é por isso que costumo usar containers, porque não quero pensar no processo de instalação - apenas um docker-compose ou docker-command e está sendo executado. Isso me convence o suficiente para usá-lo.