Ao contrário de plataformas de fórum mais antigas (vBulletin, phpBB), o Discourse não é uma coleção de scripts do lado do servidor (php) e um banco de dados separado.
O Discourse compreende duas metades: um backend que fica no Docker e um aplicativo javascript de página única que é servido ao dispositivo cliente.
Qualquer coisa que exija uma alteração no backend afetará o contêiner Docker, o que, nas instalações mais básicas, necessita de um pequeno tempo de inatividade. É a isso que as pessoas se referem quando dizem que o aplicativo precisa ser reconstruído. O arquivo de configuração (um documento yml) que controla como o contêiner é construído precisa ser editado e, em seguida, uma reconstrução é emitida para o launcher via SSH. A instalação de plugins significa uma reconstrução, enquanto alterações simples no SMTP são mais parecidas com uma reinicialização.
A introdução de novos temas e componentes de tema são efetivamente alterações de front-end feitas dentro do aplicativo web em execução. Eles não resultam em nenhum tempo de inatividade, pois o aplicativo e o banco de dados subjacentes permanecem efetivamente inalterados.