Migrar instância produtiva Discourse 1:1 para servidor de teste

Olá, assumi o cargo de administrador em uma comunidade e atualmente estou diante do desafio de atualizar o fórum para a versão mais recente.

Ele não foi atualizado por um longo período de tempo porque o plugin de calendário causava problemas.

Aluguei um servidor adicional e gostaria de primeiro executar uma cópia 1:1 do ambiente de produção nele.

Como estou usando uma versão antiga, ainda não sei como fazer isso, pois em uma nova instalação sempre são baixadas as versões mais recentes.

Estamos rodando:

Discourse 3.2.0.beta1-dev (19567daeb9)

com os seguintes plugins e versões:

e PG 13.

Primeiro, gostaria de executar uma cópia 1:1, salvá-la por meio de um backup completo e, a partir daí, avaliar como iniciar o processo de atualização sem destruir a instância. Assim que encontrar um caminho funcional, a instância de produção também será atualizada.

A dificuldade agora é: como crio primeiro uma cópia 1:1 da minha versão antiga, incluindo o banco de dados PG antigo e os plugins antigos?

Sou iniciante e ficarei muito grato por dicas e/ou links.

Muito obrigado pelo seu tempo e cumprimentos,
Richarde

1 curtida

Olá!

Este pode ser um bom ponto de partida:

1 curtida

Obrigado pela sua ajuda!

Pelo que entendi, o backup não contém software, ou seja, plugins e suas versões, nem o próprio Discourse com sua versão. Portanto, isso não é adequado para o problema mencionado.

Felizmente, o plugin que estava impedindo a atualização agora está compatível novamente com a versão mais recente do Discourse, o que me permitiu configurar um novo servidor com a versão mais recente e restaurar o backup lá.

No entanto, pode ser muito útil para alguns (como também para a nossa comunidade no período em que o plugin não era compatível com o software) saber como montar uma instância de teste como uma cópia exata, para testar futuras etapas em um ambiente seguro, sem afetar o ambiente de produção.

1 curtida

Se você estiver usando um provedor que pode clonar seu VPS inteiro, isso pode ser um atalho a ser explorado:

Além disso, este processo para uma mudança de site usando rsync pareceria trazer o site inteiro 1:1…
Mover um site Discourse para outro VPS com rsync - Wiki da comunidade / Sysadmins
[EDIT: não 1:1 se você fizer a reconstrução prescrita. Seria necessário iniciar sem reconstrução.)

O processo básico parece bastante simples, embora haja muitos comentários oferecendo abordagens modificadas e parâmetros de comando. Eu não fiz isso. Se eu tivesse que fazer, acho que começaria com o básico e veria como as coisas se desenrolam. Vários possíveis problemas são discutidos nos comentários.

Mas isso envolve reconstruir o fórum, certo?

Por outro lado, pode ser que funcione:

(Enquanto estou nisso, como este tópico é diferente do vinculado?)

O citado por mim é o que tentei e não funcionou.
Fazendo um 1:1 com um Snap via Provider, desabilitando https.

Tentei muito também mudando a Conf. via rails, mas não consegui fazer funcionar, então o caminho via snap não está funcionando para mim. Então estou perguntando aqui, por uma maneira de fazer isso. (mesmo que eu já tenha resolvido meu problema, isso pode ser útil no futuro)

Sim, o que novamente leva a atualizações, por que isso não deveria funcionar.

Obrigado pessoal

Oof, sim, boa observação. Devo ter ficado acordado até tarde. A ideia de Pfaffman é interessante, no entanto.

1 curtida

Que problema você acha que está resolvendo ao criar outro site usando o mesmo contêiner?

Eu acho que se é isso que você quer fazer, então a coisa a fazer é construir a imagem e lançá-la atrás de um proxy reverso para ambos os sites.

Além disso, existem algumas novas imagens que ainda não são suportadas e que podem ser lançadas diretamente, então você pode procurar tópicos sobre elas.