Se você fizer uma reconstrução, ela desliga o contêiner, executa o bootstrap, destrói o contêiner antigo e, em seguida, inicia o novo.
A reconstrução não destrói o contêiner existente (até que ele tenha um novo para iniciar em seu lugar).
Se o bootstrap falhar, você pode reiniciar o contêiner antigo manualmente.
Na primeira vez, não há motivo para não fazer uma reconstrução.
Para compilações subsequentes, você deseja fazer o bootstrap para que o contêiner existente possa continuar a atender às solicitações enquanto o novo contêiner está sendo criado.
Para o contêiner de dados, você sempre deseja reconstruir porque não quer que duas instâncias de banco de dados modifiquem os mesmos arquivos.
Para a atualização do PG, você deseja parar tudo (a web não pode funcionar sem o banco de dados de qualquer maneira) antes de reconstruir o contêiner de dados.
A reconstrução também faz um “git pull”, então você pode usar o bootstrap em vez disso para ter controle sobre isso.