Movendo instância do discourse para um novo servidor

Antes de perguntar, você pesquisou primeiro? Pressione :magnifying_glass_tilted_left: no canto superior direito para pesquisar

Olá,

Primeiramente, quero agradecer por qualquer suporte que você possa oferecer. Dito isso, gostaria de discutir meu problema e, em seguida, meus objetivos para minha instância Discourse auto-hospedada.

Problema

Atualmente, uso a Hetzner como meu servidor que hospeda uma instância Discourse. Anexei volumes para Uploads e Backups. Os contêineres e imagens Docker atuais, bem como o app.yml e etc., estão hospedados no próprio servidor em /var/discourse.

Tenho este servidor há mais de 3-4 anos e, durante esse tempo, sempre me deparei com problemas de espaço no servidor em si (não nos volumes). Sempre que eu queria reconstruir o aplicativo ou relançá-lo, eu encontrava problemas de espaço, pois ele instalava as imagens e os contêineres Docker no servidor local em vez de em um volume. Eu constantemente precisava remover o Docker e quaisquer imagens/contêineres e fazer uma nova instalação para poder reconstruir. Também acredito que os dados SQL estão anexados ao servidor local em vez de a um volume.

Objetivos

Não tenho certeza do que seria melhor para mim daqui para frente. Seria mover pastas ou arquivos específicos para um novo volume para o banco de dados Postgres e as imagens Docker, e se for o caso, eu adoraria suporte sobre como fazer isso? Ou começar do zero com um novo servidor, criando um backup do servidor e restaurando em um novo servidor com todos os volumes em locais devidamente configurados?


Com tudo isso dito, eu adoraria algum suporte na configuração do app.yml para ter volumes adequados para tudo que ocupa espaço, para que eu possa escalar individualmente quando backups, uploads, banco de dados ou imagens Docker, por exemplo, precisarem.

Posso fornecer meu arquivo app.yml ainda hoje, pois estou atualmente no trabalho e quero me adiantar.

Eu faço a hospedagem do Discourse na AWS e tive muito sucesso até agora em manter /var/discourse em seu próprio volume EBS montável e anexar esse volume a diferentes instâncias EC2 conforme precisei migrar. Eu até mudei completamente a arquitetura de x64 para ARM (troquei instâncias EC2 de um t3a.large para um r7g.large) e, após remontar o volume /var/discourse, voltei a ficar online após um simples launcher rebuild app, mesmo com a mudança de arquitetura.

Resumindo, se o seu /var/discourse estiver armazenado em um volume montável, então você tem todo o estado do seu fórum em um estado essencialmente montável. Contanto que você possa configurar um host e instalar o Docker nele, você pode montar /var/discourse nele, executar um launcher rebuild app e estar funcionando. (Assumindo que coisas como nome do host e outras especificadas em app.yml permaneçam constantes entre os hosts.)

Você poderia fornecer um exemplo de app.yml para esta configuração? Além disso, é tão simples quanto mover o conteúdo de “/var/discourse” para um volume diferente ou preciso clonar o repositório no novo volume?


E quanto aos arquivos do banco de dados?

Aqui está uma cópia higienizada do meu app.yml de trabalho atual

E todo o conteúdo do banco de dados é armazenado em /var/discourse? Então, se eu mover todo o conteúdo de /var/discourse para um volume montável, ele continuará a usar todos os dados existentes?

Estou usando a instalação padrão auto-hospedada em contêiner único, então está tudo configurado como os padrões definidos!

Pergunta, mesmo que eu tenha movido a pasta /discourse para um volume montável, ainda estou tendo problemas com o docker. Como os contêineres e imagens ainda estão sendo executados no disco local em vez de um volume. Alguma ideia de como consertar isso?

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.