Essse é um guia prático e objetivo para configurar automaticamente a Evolution API com PostgreSQL e Redis utilizando Docker e Docker Compose.
Todo o ambiente estará pronto para uso após seguir este tutorial.
👉 Entre na Comunidade Visionários para aprender mais: (ENTRAR PARA COMUNIDADE).
Certifique-se de ter:
- Docker e Docker Compose instalados (Guia de instalação).
- Chave de autenticação para a API (API Key).
Certifique-se de que os arquivos abaixo estejam no diretório do projeto:
Dockerfiledocker-compose.yml
Crie um arquivo Dockerfile no diretório raiz com o seguinte conteúdo:
# Usando a imagem oficial da Evolution APIFROM atendai/evolution-api:v2.1.1
# Variáveis de ambienteENV AUTHENTICATION_API_KEY=mude-me
# Expondo a porta da aplicaçãoEXPOSE 8080
# Comando para iniciar a APICMD ["npm", "run", "start:prod"]Crie um arquivo docker-compose.yml no mesmo diretório com o seguinte conteúdo:
version: '3.9'services:
evolution-api:
build: .container_name: evolution_apirestart: alwaysports:
- "8080:8080"environment:
# Configurações do PostgreSQLDATABASE_ENABLED: "${DATABASE_ENABLED}"DATABASE_PROVIDER: "${DATABASE_PROVIDER}"DATABASE_CONNECTION_URI: "${DATABASE_CONNECTION_URI}"DATABASE_CONNECTION_CLIENT_NAME: "${DATABASE_CONNECTION_CLIENT_NAME}"DATABASE_SAVE_DATA_INSTANCE: "${DATABASE_SAVE_DATA_INSTANCE}"DATABASE_SAVE_DATA_NEW_MESSAGE: "${DATABASE_SAVE_DATA_NEW_MESSAGE}"DATABASE_SAVE_MESSAGE_UPDATE: "${DATABASE_SAVE_MESSAGE_UPDATE}"DATABASE_SAVE_DATA_CONTACTS: "${DATABASE_SAVE_DATA_CONTACTS}"DATABASE_SAVE_DATA_CHATS: "${DATABASE_SAVE_DATA_CHATS}"DATABASE_SAVE_DATA_LABELS: "${DATABASE_SAVE_DATA_LABELS}"DATABASE_SAVE_DATA_HISTORIC: "${DATABASE_SAVE_DATA_HISTORIC}"# Configurações do RedisCACHE_REDIS_ENABLED: "${CACHE_REDIS_ENABLED}"CACHE_REDIS_URI: "${CACHE_REDIS_URI}"CACHE_REDIS_PREFIX_KEY: "${CACHE_REDIS_PREFIX_KEY}"CACHE_REDIS_SAVE_INSTANCES: "${CACHE_REDIS_SAVE_INSTANCES}"CACHE_LOCAL_ENABLED: "${CACHE_LOCAL_ENABLED}"# Chave de autenticação da APIAUTHENTICATION_API_KEY: "${AUTHENTICATION_API_KEY}"depends_on:
- redis
- postgresredis:
image: redis:7container_name: evolution_redisrestart: alwaysports:
- "6379:6379"healthcheck:
test: ["CMD", "redis-cli", "-u", "${CACHE_REDIS_URI}", "ping"]interval: 10stimeout: 5sretries: 5postgres:
image: postgres:14container_name: evolution_postgresrestart: alwaysports:
- "5432:5432"environment:
POSTGRES_USER: "${POSTGRES_USER}"POSTGRES_PASSWORD: "${POSTGRES_PASSWORD}"POSTGRES_DB: "${POSTGRES_DB}"healthcheck:
test: ["CMD", "pg_isready", "-U", "${POSTGRES_USER}"]interval: 10stimeout: 5sretries: 5volumes:
redis_data:
postgres_data:Crie um arquivo .env no mesmo diretório e adicione a seguinte configuração:
# Substitua pela sua chave de autenticaçãoAUTHENTICATION_API_KEY=sua_chave_de_autenticacaoPara gerar um Hash (Chave de acesso) Acesse o site abaixo e copie a chave Encryption key 256 gerada no campo https://acte.ltd/utils/randomkeygen
Execute o seguinte comando para subir os contêineres:
docker-compose up -dEste comando irá:
- Criar e inicializar o PostgreSQL.
- Configurar a Evolution API para usar o PostgreSQL e o Redis.
- Expor a API na porta
8080.
Após a execução bem-sucedida, você pode acessar a API em:
http://localhost:8080
Para verificar se o PostgreSQL está funcionando corretamente, use um cliente de banco de dados (como DBeaver ou pgAdmin) e conecte-se com as seguintes credenciais:
- Host:
localhost - Porta:
5432 - Usuário:
evolution_user - Senha:
evolution_password - Banco de Dados:
evolution_db
Para mais informações sobre a API, consulte a documentação oficial.
Se você encontrar problemas ou tiver sugestões, entre em contato com a Comunidade Visionários. 🎉👇 (ENVIAR MENSAGEM).
Comunidade Visionários - Domine as IAs e esteja um passo à frente