Com a ajuda de alguma IA, aqui está uma lista abrangente de subcomandos para o comando discourse.
A CLI discourse (implementada via script/discourse usando a gem Thor) fornece 13 subcomandos principais categorizados em Backups & Restaurações, Gerenciamento de Site & Modos, Utilitários de Banco de Dados e Migração de Dados (Importação/Exportação).
Referência Rápida de Comandos
| Categoria | Subcomando | Função Principal |
|---|---|---|
| Backup & Restauração | backup |
Gera um arquivo de backup completo ou apenas do banco de dados. |
restore |
Restaura um arquivo de backup .tar.gz na instância. |
|
enable_restore |
Concede permissão para executar comandos de restauração. | |
disable_restore |
Revoga a permissão para realizar restaurações. | |
rollback |
Reverte o estado do banco de dados após uma falha na restauração. | |
| Modos de Site | enable_readonly |
Ativa o modo de somente leitura temporário em todo o site. |
disable_readonly |
Remove o modo de somente leitura para restaurar as gravações normais do site. | |
request_refresh |
Aciona um prompt de atualização do navegador para todos os clientes conectados ativos. | |
| Operações de Banco de Dados | remap |
Executa busca e substituição global de texto nas tabelas do banco de dados. |
| Migração de Dados | export_category |
Exporta uma única categoria, seus tópicos e usuários associados. |
import_category |
Importa um arquivo de categoria no fórum atual. | |
export_topics |
Exporta tópicos específicos por ID e suas contas de autor/resposta. | |
import_topics |
Importa um arquivo de tópicos no fórum atual. |
Documentação Detalhada dos Subcomandos
1. Comandos de Backup & Restauração
discourse backup [FILENAME]
-
Descrição: Cria um backup completo do banco de dados e dos ativos do fórum.
-
Flags:
-
--sql-only: (Booleano, Padrão:false) Faz dump apenas do banco de dados PostgreSQL, ignorando arquivos locais enviados. -
--s3-uploads: (Booleano, Padrão:false) Força a inclusão de ativos armazenados no S3 no arquivo de backup (ignorado quando--sql-onlyestá definido). -
Exemplo:
discourse backup
discourse backup --sql-only
discourse restore [FILENAME]
- Descrição: Restaura um backup de fórum de um arquivo
.tar.gzlocal localizado em/var/www/discourse/public/backups/default. - Pré-requisito: Exige a execução de
discourse enable_restoreprimeiro. - Exemplo:
discourse restore discourse-2026-07-22-120000-v2026xxxx.tar.gz
discourse enable_restore & discourse disable_restore
- Descrição: Alterna a flag de aplicação que permite ou restringe tarefas de restauração via console/web.
- Sequência de Uso:
discourse enable_restore
discourse restore <filename>
discourse disable_restore
discourse rollback
- Descrição: Reverte o esquema e o estado do banco de dados para o ponto anterior a uma execução de restauração falha.
2. Controles de Estado do Site & Cliente
discourse enable_readonly & discourse disable_readonly
- Descrição: Define ou limpa a
READONLY_MODE_KEYno Redis. - Detalhes:
- Congela gravações no banco de dados enquanto mantém o site legível para os usuários.
- Usa um loop de tempo de vida curto (TTL) renovado enquanto ativo, impedindo que o site permaneça bloqueado permanentemente se a sessão do terminal falhar.
discourse request_refresh
- Descrição: Envia uma mensagem de sistema via MessageBus instruindo todas as sessões web online a recarregar a página web. Útil após implantar atualizações de ativos ou mudanças globais de tema.
3. Remapeamento de Banco de Dados
discourse remap [OPTIONS] FROM TO
-
Descrição: Executa uma busca e substituição direta de string nas colunas de texto do banco de dados. Crucial ao atualizar nomes de domínio, caminhos de CDN ou prefixos de upload de imagens.
-
Flags:
-
--global: (Booleano) Varre e remapeia todas as tabelas, em vez das tabelas de conteúdo padrão. -
--regex: (Booleano) Avalia o parâmetroFROMcomo uma expressão regular, em vez de uma string literal. -
Exemplo:
discourse remap "old-domain.com" "new-domain.com"
discourse remap --global "/uploads/default/" "/cdn-uploads/"
4. Importação & Exportação Seletiva de Dados
discourse export_category [CATEGORY_ID]
- Descrição: Serializa uma única categoria, incluindo todos os tópicos aninhados, posts e perfis de usuários participantes, em um arquivo de arquivo JSON.
discourse import_category [FILE_PATH]
- Descrição: Lê um arquivo criado por
export_categorye mescla os dados da categoria na instância de destino.
discourse export_topics [TOPIC_IDS...]
- Descrição: Pega um ou mais IDs de tópicos separados por espaço e exporta os tópicos, posts e contas de usuários relevantes.
- Exemplo:
discourse export_topics 102 105 210
discourse import_topics [FILE_PATH]
- Descrição: Importa um arquivo JSON criado por
export_topicsna instância Discourse de destino.