Olá, segui este Multisite configuration with Docker para configurar múltiplos sites. Agora quero voltar a um único site. O que devo fazer além de restaurar o arquivo app.yml?
Eu realmente não entendo o que você está tentando alcançar aqui, mas se quiser mover um site da configuração multisite, você pode fazer isso baixando um backup do multisite e restaurando-o no site independente. Talvez seja necessário fazer algum remapeamento, dependendo de como esse site independente está configurado.
Eu só quero manter o primeiro site e excluir o segundo.
Sim, a abordagem mais simples é fazer um backup do primeiro site, desligar os dois containers (web_only e data) que você pode ter usado ao configurar o multisite, configurar um novo site por meio de ./discourse-setup e, em seguida, restaurar seu backup. Uma solução mais avançada pode incluir a remoção da configuração do segundo site dos arquivos yml, acessar o container de dados para excluir o segundo banco de dados e remover os ativos do segundo site da pasta compartilhada, etc.
Obrigado! Vou tentar o primeiro método.
Olá, estou seguindo o seu segundo método. Removi o banco de dados do segundo site e restaurei o arquivo de configuração app.yml. Porém, não sei como remover os ativos do segundo site da pasta compartilhada; você poderia me ajudar?
Quando atualizo o Discourse, apareço uma página em branco na página de plugins e um erro no console:
Uncaught TypeError: Cannot read property 'extend' of undefined
at _discourse-rss-poster-422da9e50d576ad45cb7287315e7a35550af3708eb68422bee05813edc01521d.js:188
at t.module.exports.u.<computed> (_ember_jquery-1ed3f3559e6f967733b4088aa729ff7039dff2c09c5a5f787a214b016f58aabc.js:74640)
at t.module.exports.u.<computed> (_ember_jquery-1ed3f3559e6f967733b4088aa729ff7039dff2c09c5a5f787a214b016f58aabc.js:74470)
at require (_ember_jquery-1ed3f3559e6f967733b4088aa729ff7039dff2c09c5a5f787a214b016f58aabc.js:74637)
at t.customResolve (_application-572c27eef10b724b244ce26553c6fe92b75f44172387b25ef144f338da4faa1e.js:1015)
at t.resolveRoute (_application-572c27eef10b724b244ce26553c6fe92b75f44172387b25ef144f338da4faa1e.js:1051)
at t.e [as resolveRoute] (_ember_jquery-1ed3f3559e6f967733b4088aa729ff7039dff2c09c5a5f787a214b016f58aabc.js:43433)
at t.n.resolve (_ember_jquery-1ed3f3559e6f967733b4088aa729ff7039dff2c09c5a5f787a214b016f58aabc.js:46378)
at _ember_jquery-1ed3f3559e6f967733b4088aa729ff7039dff2c09c5a5f787a214b016f58aabc.js:12420
at e.t.resolve (_ember_jquery-1ed3f3559e6f967733b4088aa729ff7039dff2c09c5a5f787a214b016f58aabc.js:11959)
```\n
Acho que isso se deve ao segundo site, mas não sei como corrigir. Obrigado!
Você pode me ajudar, por favor? @sam
Você terá que compartilhar seu arquivo app.yml, omitindo as senhas. Eu culparia isso por alguma omissão ou erro no seu arquivo app.yml que está causando isso.
## este é o modelo de contêiner Docker Discourse tudo-em-um e autônomo
##
## Após fazer alterações neste arquivo, você DEVE reconstruir
## /var/discourse/launcher rebuild app
##
## TENHA *MUITO* CUIDADO AO EDITAR!
## ARQUIVOS YAML SÃO EXTREMAMENTE SENSÍVEIS A ERROS DE ESPAÇAMENTO OU ALINHAMENTO!
## visite http://www.yamllint.com/ para validar este arquivo conforme necessário
templates:
- "templates/postgres.template.yml"
- "templates/redis.template.yml"
- "templates/web.template.yml"
- "templates/web.ratelimited.template.yml"
## Descomente estas duas linhas se desejar adicionar o Lets Encrypt (https)
# - "templates/web.ssl.template.yml"
# - "templates/web.letsencrypt.ssl.template.yml"
- "templates/web.socketed.template.yml"
## quais portas TCP/IP este contêiner deve expor?
## Se você deseja que o Discourse compartilhe uma porta com outro servidor web como Apache ou nginx,
## consulte https://meta.discourse.org/t/17247 para detalhes
expose:
# - "80:80" # http
# - "443:443" # https
params:
db_default_text_search_config: "pg_catalog.english"
## Defina db_shared_buffers para no máximo 25% da memória total.
## será definido automaticamente pelo bootstrap com base na RAM detectada, ou você pode sobrescrever
db_shared_buffers: "128MB"
## pode melhorar o desempenho de ordenação, mas aumenta o uso de memória por conexão
#db_work_mem: "40MB"
## Qual revisão do Git este contêiner deve usar? (padrão: tests-passed)
#version: tests-passed
env:
LANG: en_US.UTF-8
# DISCOURSE_DEFAULT_LOCALE: en
## Quantas requisições web simultâneas são suportadas? Depende da memória e dos núcleos da CPU.
## será definido automaticamente pelo bootstrap com base nas CPUs detectadas, ou você pode sobrescrever
UNICORN_WORKERS: 2
## TODO: O nome de domínio ao qual esta instância do Discourse responderá
## Obrigatório. O Discourse não funcionará com um número IP puro.
DISCOURSE_HOSTNAME: at4am.io
## Descomente se quiser que o contêiner seja iniciado com o mesmo
## nome de host (opção -h) especificado acima (padrão "$hostname-$config")
#DOCKER_USE_HOSTNAME: true
## TODO: Lista de e-mails separados por vírgula que serão definidos como administradores e desenvolvedores
## no primeiro exemplo de cadastro 'user1@example.com,user2@example.com'
DISCOURSE_DEVELOPER_EMAILS: 'a@gmail.com'
## TODO: O servidor SMTP de e-mail usado para validar novas contas e enviar notificações
## ENDEREÇO, usuário e senha do SMTP são obrigatórios
# AVISO: o caractere '#' na senha do SMTP pode causar problemas!
DISCOURSE_SMTP_ADDRESS: smtp.office365.com
DISCOURSE_SMTP_PORT: 587
DISCOURSE_SMTP_USER_NAME: a@outlook.com
DISCOURSE_SMTP_PASSWORD: "a"
DISCOURSE_SMTP_AUTHENTICATION: login
#DISCOURSE_SMTP_ENABLE_START_TLS: true # (opcional, padrão true)
## Se você adicionou o modelo Lets Encrypt, descomente abaixo para obter um certificado SSL gratuito
LETSENCRYPT_ACCOUNT_EMAIL: a@gmail.com
## O endereço CDN para esta instância do Discourse (configurado para buscar)
## consulte https://meta.discourse.org/t/14857 para detalhes
#DISCOURSE_CDN_URL: //discourse-cdn.example.com
## O contêiner Docker é sem estado; todos os dados são armazenados em /shared
volumes:
- volume:
host: /var/discourse/shared/standalone
guest: /shared
- volume:
host: /var/discourse/shared/standalone/log/var-log
guest: /var/log
## Plugins vão aqui
## consulte https://meta.discourse.org/t/19157 para detalhes
hooks:
after_code:
- exec:
cd: $home/plugins
cmd:
- git clone https://github.com/discourse/docker_manager.git
- git clone https://github.com/livc/discourse-rss-poster
#- git clone https://github.com/paviliondev/discourse-ratings
- git clone https://github.com/discourse/discourse-data-explorer
- git clone https://github.com/discourse/discourse-solved
## Quaisquer comandos personalizados para executar após a construção
run:
- exec: echo "Início dos comandos personalizados"
## Se você quiser definir o endereço de e-mail 'De' para seu primeiro registro, descomente e altere:
## Após receber o primeiro e-mail de cadastro, comente novamente a linha. Só precisa ser executado uma vez.
#- exec: rails r "SiteSetting.notification_email='info@unconfigured.discourse.org'"
- exec: echo "Fim dos comandos personalizados"
Este é o meu app.yml, obrigado pela ajuda.
Analisando seu erro anterior e o app.yml, muito provavelmente se trata do fork do plugin RSS que você está usando. Algo pode estar quebrado nele, o que provavelmente está causando o problema. Você pode tentar reconstruir após desativar o plugin?
Se eu comentar este plugin, a página do plugin funciona. Mas antes de eu atualizar o Discourse para a versão mais recente, o plugin funcionava e não tinha problemas.
Então, não tenho certeza se é devido à atualização do Discourse ou ao multisite.
Especialmente, descobri que
https://meta.discourse.org/t/discourse-subscriptions/140818/77?u=livc
tem o mesmo erro no multisite.
Esse plugin é muito importante para o meu site e agora não tenho ideia do que fazer. ![]()
Se você criou esse plugin, tente corrigi-lo. Se alguém o construiu para você, tente entrar em contato com essa pessoa para que seja corrigido.