> For the complete documentation index, see [llms.txt](https://ajuda.rnp.br/diplomas-digitais/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://ajuda.rnp.br/diplomas-digitais/passo-a-passo/conector-local-1/migracao-de-infraestrutura-do-diploma-digital.md).

# Migração de Infraestrutura do Diploma Digital

Partindo da premissa que o novo ambiente(VM) na nuvem já esteja configurado com Docker e Docker Compose, siga as regras de acesso para acesso SSH para que os arquivos possam ser copiados.&#x20;

Certifique-se de ter backups adequados de todos os dados e configurações antes da migração.

**Subir o docker-compose na nova VM:**

Certifique-se de que você tenha o arquivo do diploma docker-compose.yml na nova VM.

**Obs: É necessário que seja a mesma versão de ambos serviços que rodam atualmente na sua infraestrutura.**

docker-compose –f docker-compose.yml up -d

**Migrar os dados dos volumes:**

Execute os passos para exportar e importar os volumes.

## # Exportar volumes na VM antiga

docker run --rm -v postgresql-data:/volume -v $(pwd):/backup ubuntu tar cvf /backup/postgresql-data.tar /volume

docker run --rm -v rapconector-data:/volume -v $(pwd):/backup ubuntu tar cvf /backup/rapconector data.tar /volume

## # Transferir os arquivos para a nova VM (executado localmente)

scp postgresql-data.tar user\@nova-vm:/path/to/backup

scp rapconector-data.tar user\@nova-vm:/path/to/backup

## # Importar volumes na nova VM

docker run --rm -v postgresql-data:/volume -v /path/to/backup\:/backup ubuntu bash -c "cd /volume && tar xvf /backup/postgresql-data.tar --strip 1"

docker run --rm -v rapconector-data:/volume -v /path/to/backup\:/backup ubuntu bash -c "cd /volume && tar xvf /backup/rapconector-data.tar --strip 1"

**Verificar variáveis de ambiente e configurações:**

Certifique-se de que todas as variáveis de ambiente e configurações no docker-compose.yml estão corretas e compatíveis com a nova VM.

## **Legenda dos comandos:**

**Comandos para Exportar Volumes**

1. **Exportar volumes na VM antiga:**

docker run --rm -v postgresql-data:/volume -v $(pwd):/backup ubuntu tar cvf /backup/postgresql-data.tar /volume

**Explicação:**

● docker run --rm: Cria e executa um novo container temporário que é removido após a execução.

● -v postgresql-data:/volume: Monta o volume postgresql-data do Docker no caminho /volume dentro do container.

● -v $(pwd):/backup: Monta o diretório atual do host (diretório de trabalho atual) no caminho /backup dentro do container.

● ubuntu: Usa a imagem ubuntu para criar o container.

● tar cvf /backup/postgresql-data.tar /volume: Executa o comando tar dentro do container para criar um arquivo tar (postgresql-data.tar) contendo o conteúdo do volume /volume.

Este comando cria um arquivo tar com os dados do volume postgresql-data.

2. **Transferir os arquivos para a nova VM (executado localmente):**

scp postgresql-data.tar user\@nova-vm:/path/to/backup

scp rapconector-data.tar user\@nova-vm:/path/to/backup

**Explicação:**

● scp: Comando de cópia segura que transfere arquivos entre hosts em uma rede.

● postgresql-data.tar: Arquivo a ser transferido.

● user\@new-vm:/path/to/backup: Destino na nova VM onde o arquivo será copiado. Substitua user pelo nome do usuário e new-vm pelo endereço da nova VM.

## Comandos para Importar Volumes

3. **Importar volumes na nova VM:**

docker run --rm -v postgresql-data:/volume -v /path/to/backup\:/backup ubuntu bash -c "cd /volume && tar xvf /backup/postgresql-data.tar --strip 1"

**Explicação:**

● docker run --rm: Cria e executa um novo container temporário que é removido após a execução.

● -v postgresql-data:/volume: Monta o volume postgresql-data do Docker no caminho /volume dentro do container.

● -v /path/to/backup\:/backup: Monta o diretório onde o arquivo tar foi transferido no caminho /backup dentro do container.

● ubuntu bash -c "cd /volume && tar xvf /backup/postgresql-data.tar --strip 1": Usa a imagem ubuntu para criar o container e executa o comando tar dentro do container para extrair o conteúdo do arquivo tar no volume /volume.

Este comando extrai o conteúdo do arquivo tar no volume postgresql-data.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://ajuda.rnp.br/diplomas-digitais/passo-a-passo/conector-local-1/migracao-de-infraestrutura-do-diploma-digital.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
