> ## 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 — upgrades locais com Docker e rollouts via Helm para manter sua instalação segura e atualizada.

Manter o Midaz atualizado significa que você está sempre trabalhando com as funcionalidades mais recentes, correções de segurança e melhorias. Atualizações regulares também mantêm tudo funcionando bem com outros componentes e ajudam a prevenir problemas causados por dependências desatualizadas.

Abaixo estão os passos para atualizar o Midaz no seu ambiente local e usando Helm.

## Atualizando o Midaz localmente

***

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

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

Encerre todos os serviços em execução antes de fazer atualizações. Isso garante uma reinicialização limpa com as últimas atualizações.

Para parar os containers via terminal, siga estes passos:

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

  <Step>
    Execute o comando de parada:

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

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

Limpar recursos não utilizados ajuda a manter seu ambiente eficiente:

* **Liberar espaço em disco**: Evite que imagens, containers e volumes antigos consumam armazenamento.
* **Evitar conflitos com dependências desatualizadas**: Garanta que você está trabalhando com as configurações mais recentes.
* **Melhorar o desempenho**: Reduza camadas de cache Docker desnecessárias e otimize o gerenciamento de recursos.
* **Prevenir dores de cabeça com debugging**: Elimine inconsistências causadas por dados desatualizados persistentes no sistema.
* **Manter seu workspace organizado**: Mantenha uma configuração de desenvolvimento organizada, especialmente ao alternar entre projetos.

Para remover imagens e containers não utilizados:

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

Para remover volumes Docker não utilizados:

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

### 3. Atualize seu codebase local

Busque as últimas mudanças 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 últimas atualizações:

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

## Atualizando o Midaz com Helm

***

Para deployments usando Helm, use os seguintes comandos conforme suas necessidades. O Helm simplifica deployments baseados em Kubernetes, facilitando a instalação, atualização ou remoção do Midaz.

### Instalação limpa

Realize uma instalação limpa ao configurar o Midaz pela primeira vez ou quando um deployment limpo é necessário.

#### Instalar o Midaz Helm com um arquivo de valores customizado

Use este método se você tem requisitos de configuração específicos definidos no `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 Midaz Helm com valores padrão

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

<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 deployment existente

Se o Midaz já está implantado, use estes comandos para atualizar para uma nova versão preservando as configurações.

#### Atualizando o Midaz Helm com um arquivo de valores customizado

Garanta que as configurações customizadas 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 Midaz Helm com valores padrão

Use este comando se você não precisa aplicar configurações customizadas:

<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 Helm

***

Use estes comandos para verificar e gerenciar seu deployment Midaz via Helm.

### Listar releases instalados

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

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

### Deletar o release Midaz Helm

Se você precisa remover completamente o Midaz do seu cluster, execute:

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

Mantendo o Midaz atualizado, você garante um ambiente estável, seguro e de alto desempenho enquanto se beneficia das melhorias e boas práticas mais recentes.

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