> For the complete documentation index, see [llms.txt](https://docs.kiloiot.io/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.kiloiot.io/kilo-docs-pt/kilo-center/kilo-mioty-service-center/getting-started/installation-local-vm-and-automation.md).

# Instalação: VM Local e Automatização

Execute o KiloCenter numa VM local com provisionamento automatizado — configuração repetível para testes e integração da equipa via Docker.

### Objetivo

Crie ambientes locais repetíveis para testes e integração de novos membros da equipe.

### Padrão de VM local

Provisione uma VM Linux, clone o repositório e siga os passos de Instalação: Docker Compose. O Docker Compose é a abordagem recomendada para configurações baseadas em VM, pois lida com todos os serviços — incluindo o KC-Web — automaticamente.

```bash
cd kilocenter-modules
cp .env.example .env
docker compose run --rm certgen
docker compose up --build -d
```

Abre `http://localhost/` para verificar se o KC-Web está em execução.

### O que Manter Consistente

Mantenha estes itens estáveis entre ambientes de VM:

* Conjunto de serviços do Docker Compose (`postgres`, `redis`, `mosquitto`, `kc-identity`, `kilocenter`, `kc-gateway`, `kc-web`)
* Geração de certificados TLS (execute `certgen` antes da primeira inicialização -- veja Instalação do Docker Compose)
* Mapeamentos de portas e endpoints de verificação de integridade

### Por que Usar Este Modo

* Validação em ambiente limpo a partir de uma máquina nova
* Integração repetível para novos membros da equipe
* Ensaios de ambiente de pré-produção


---

# 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://docs.kiloiot.io/kilo-docs-pt/kilo-center/kilo-mioty-service-center/getting-started/installation-local-vm-and-automation.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.
