Depois de quebrar a cabeça por muitas horas, é hora de pedir ajuda.
Log de depuração:
https://privatebin.net/?b56249efe41b5599#8nt7yMQU2Hft4HysXSoZkxXQTYdR9MFv91qC9sbBgen
Depois de quebrar a cabeça por muitas horas, é hora de pedir ajuda.
Log de depuração:
https://privatebin.net/?b56249efe41b5599#8nt7yMQU2Hft4HysXSoZkxXQTYdR9MFv91qC9sbBgen
Seu Droplet (ou contêiner Docker) está com problemas de conectividade com o GitHub
fatal: unable to access ‘GitHub - discourse/discourse: A platform for community discussion. Free, open, simple.’: Could not resolve host: github.com
Você poderia verificar se o GitHub está acessível?
Ah, o que significa que talvez eu tenha tentado reconstruir muitas vezes em um curto período e meu IP do servidor foi bloqueado temporariamente?
Nenhum dos outros erros é importante?
Acabei de tentar novamente e ainda estou bloqueado, então há mais alguma coisa que eu possa tentar ou devo apenas esperar 24 horas e tentar novamente?
Você poderia tentar pingar/curl o github.com e ver se obtém alguma resposta. Pode ser um problema de firewall ou de conectividade, em vez de um limite de taxa.
“Não foi possível resolver o host” sugere um problema de DNS, ou seja, seu servidor não consegue encontrar o endereço IP para github.com.
==================== REBUILD LOG ====================
x86_64 arch detectado.
Garantindo que o launcher esteja atualizado
Buscando origem
Launcher está atualizado
Isso sugere para mim que seu host é capaz de resolver e conectar-se a github.com, a menos que você tenha clonado o repositório discourse_docker de outro lugar. Você pode confirmar isso com os seguintes comandos para listar o remoto do repositório:
cd /var/discourse
git remote -v
o que deve produzir:
origin https://github.com/discourse/discourse_docker.git (fetch)
origin https://github.com/discourse/discourse_docker.git (push)
Se for esse o caso, o erro subsequente de falha ao resolver github.com implicaria que o contêiner docker não consegue resolvê-lo, apesar do host conseguir, sugerindo um problema com a conectividade do docker.
git remote -v de fato teve a saída esperada. Como devo solucionar problemas com o Docker, ou devo simplesmente reinstalá-lo? Ficarei feliz em fazê-lo, desde que não perca nenhum dado. Onde exatamente o Discourse armazena seu banco de dados e arquivos carregados (o que quer que aconteça a seguir, gostaria de fazer backup manualmente)?
/var/discourse/shared/standalone é mapeado para um volume no contêiner, todos os dados persistentes são armazenados lá.
docker network ls listará as redes do docker, o que vejo é a rede bridge padrão e outras duas redes. Os contêineres usam a rede bridge padrão, a menos que seja explicitamente instruído a usar outra coisa.
Encontrei algumas informações sobre a rede bridge padrão não fornecer mais conectividade para o mundo exterior. Estou especulando, mas o Ubuntu 22.04 pode ter mudado para uma versão do Docker onde isso se aplica, o que significa que o contêiner Discourse precisará ser configurado para usar uma bridge definida pelo usuário em vez disso.
Eu acho que você pode simplesmente editar /var/discourse/containers/app.yml e adicionar isso ao final, e então reconstruir: (no entanto, não testei isso)
networks:
default:
driver: bridge
/var/discourse/shared/standalone/backups/default parece ter backups compactados de todas as partes importantes, o banco de dados e os uploads.
Obrigado pelas ideias, mas não funcionou.
Devo simplesmente tentar reinstalar o Docker, ou se eu fizer isso, posso muito bem apagar tudo e fazer uma instalação completamente nova do Discourse (instalei via Discourse | DigitalOcean Marketplace 1-Click App)?
Presumo que importar o arquivo de backup seja simples de fazer no admin do Discourse?
A instalação padrão é a única forma oficialmente suportada de instalação, mas você pode encontrar informações sobre como restaurar um backup abaixo. Deve ser o mesmo processo para uma instalação 1-Click do DO.
Parece que o aplicativo 1-Click usa explicitamente o Ubuntu 20.04, então, até que isso mude, provavelmente vale a pena permanecer no 20.04. Ele continuará recebendo atualizações de correção de bugs/segurança por mais três anos, então não há pressa para mudar para o 22.04.
Você pode tentar reinstalar o Docker primeiro. Talvez o problema tenha surgido da atualização e, possivelmente, a rede do Docker sendo removida e, em seguida, readicionada pela instalação possa resolvê-lo.
Acabei apenas reconstruindo o droplet com uma cópia limpa do Ubuntu 22.04, reinstalando o Discourse manualmente (da maneira padrão) e, em seguida, apenas importando o backup. Foi rápido e fácil e eu gostaria de ter feito isso desde o início.
Obrigado por toda a ajuda!
É útil saber que não é um problema geral com a instalação no 22.04.
Fiz alguns do-release-upgrades de 20.04 para 22.04 neste fim de semana e posso confirmar que agora todos estão funcionando bem sem a necessidade de reinstalar o Docker. Algo deve ter sido corrigido nos repositórios do Ubuntu nas últimas semanas.
Agora deve ser seguro fazer upgrades como este sem problemas.