> ## Documentation Index
> Fetch the complete documentation index at: https://docs.lerian.studio/llms.txt
> Use this file to discover all available pages before exploring further.

# Atualizando o Midaz

> Atualize seu ambiente Midaz com segurança usando upgrades locais com Docker e rollouts baseados em Helm para manter sua instalação segura e atualizada.

Manter o Midaz atualizado significa trabalhar com os recursos, patches de segurança e melhorias mais recentes. Atualizações regulares também mantêm o Midaz compatível com outros componentes e ajudam a evitar problemas causados por dependências desatualizadas.

Veja abaixo os passos para atualizar o Midaz no seu ambiente local e usando Helm.

<Note>
  A partir do Midaz 3.x, imagens dedicadas de migration-runner (`midaz-ledger-migrations`, `midaz-tracer-migrations`) aplicam as migrações de schema **antes** do rollout da aplicação. As aplicações não migram mais na inicialização. O `make up` local e o chart Helm oficial fazem essa configuração automaticamente. Veja [Migrações de banco de dados](/pt/products/midaz/database-migrations) para detalhes.
</Note>

## Atualizando o Midaz localmente

***

Se você está rodando o Midaz localmente para desenvolvimento ou testes, siga estes passos para atualizar seu ambiente:

### 1. Pare os containers em execução

Desligue todos os serviços em execução antes de fazer as atualizações. Isso garante um reinício limpo com as atualizações mais recentes.

Para parar os containers pelo terminal, siga estes passos:

<Steps>
  <Step>
    Abra seu terminal e navegue até o diretório `midaz`.
  </Step>

  <Step>
    Rode o comando de parada:

    <CodeGroup>
      ```Shell Shell theme={null}
      make down
      ```
    </CodeGroup>
  </Step>
</Steps>

### 2. (Opcional) Limpe recursos Docker não usados

Limpar recursos não usados libera espaço em disco, remove camadas de cache do Docker obsoletas e evita conflitos causados por imagens, containers e volumes desatualizados.

Para remover imagens e containers não usados:

<CodeGroup>
  ```Shell Shell theme={null}
  docker system prune --all
  ```
</CodeGroup>

Para remover volumes Docker não usados:

<CodeGroup>
  ```Shell Shell theme={null}
  docker volume prune
  ```
</CodeGroup>

### 3. Atualize seu código local

Busque as mudanças mais recentes do repositório para garantir que você está trabalhando com a versão mais recente:

<CodeGroup>
  ```Shell Shell theme={null}
  git pull origin main
  ```
</CodeGroup>

### 4. Reconstrua e reinicie o Midaz

Reconstrua as imagens Docker necessárias e relance a aplicação localmente com as atualizações mais recentes:

<CodeGroup>
  ```Shell Shell theme={null}
  make up
  ```
</CodeGroup>

## Atualizando o Midaz com Helm

***

Para deploys usando Helm, use os comandos a seguir de acordo com sua necessidade.

### Instalação nova

Faça uma instalação nova quando você configurar o Midaz pela primeira vez ou quando precisar de um deploy limpo.

#### Instalar o Helm do Midaz com um arquivo de valores personalizado

Use este método se você tiver requisitos de configuração específicos definidos em `values.yaml`:

<CodeGroup>
  ```Shell Shell theme={null}
  helm install midaz oci://registry-1.docker.io/lerianstudio/midaz-helm \
    --values values.yaml --version <version> -n midaz --create-namespace
  ```
</CodeGroup>

#### Instalar o Helm do Midaz com valores padrão

Use este método para instalar o Midaz usando os valores padrão do chart Helm:

<CodeGroup>
  ```Shell Shell theme={null}
  helm install midaz oci://registry-1.docker.io/lerianstudio/midaz-helm \
    --version <version> -n midaz --create-namespace
  ```
</CodeGroup>

### Atualizando um deploy existente

Se você já fez o deploy do Midaz, use estes comandos para fazer upgrade para uma nova versão preservando as configurações.

#### Atualizando o Helm do Midaz com um arquivo de valores personalizado

Garanta que as configurações personalizadas permaneçam intactas ao aplicar a atualização:

<CodeGroup>
  ```Shell Shell theme={null}
  helm upgrade midaz oci://registry-1.docker.io/lerianstudio/midaz-helm \
    --values values.yaml --version <new-version> -n midaz --create-namespace
  ```
</CodeGroup>

#### Atualizando o Helm do Midaz com valores padrão

Use este comando se você não precisar aplicar configurações personalizadas:

<CodeGroup>
  ```Shell Shell theme={null}
  helm upgrade midaz oci://registry-1.docker.io/lerianstudio/midaz-helm \
    --version <new-version> -n midaz --create-namespace
  ```
</CodeGroup>

## Gerenciando o release do Helm

***

Use estes comandos para verificar e gerenciar seu deploy Helm do Midaz.

### Listar releases instalados

Liste todos os releases do Helm no namespace `midaz`, junto com seu status e versão:

<CodeGroup>
  ```Shell Shell theme={null}
  helm ls -n midaz
  ```
</CodeGroup>

### Excluir o release Helm do Midaz

Se você precisar remover completamente o Midaz do seu cluster, rode:

<CodeGroup>
  ```Shell Shell theme={null}
  helm delete midaz -n midaz
  ```
</CodeGroup>

<CodeGroup>
  ```Shell Shell theme={null}
  helm delete midaz -n midaz
  ```
</CodeGroup>
