Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- # ${WPP_API_DOMINIO}
- # ${DOMINIO_PRINCIPAL_CLIENTE}
- # ${SENHA_GLOBAL}
- version: "3.7"
- # Definição dos Serviços
- services:
- # Definição do Nome do Serviço
- api-wpp:
- # imagem do Evolution
- image: atendai/evolution-api:latest
- # comando padrão para subir o servidor web
- command: ["node", "./dist/src/main.js"]
- # configura a rede do serviço
- networks:
- # Define a nossa rede padrão do swarm
- - network_public
- volumes:
- - api_wpp_instances:/evolution/instances
- - api_wpp_store:/evolution/store
- # Variáveis de ambiente para configurar o Evolution
- environment:
- # *****************************************************************************************
- # Configurações Gerais
- # *****************************************************************************************
- # Configura o Evolution para ler as variáveis de ambiente
- - SERVER_URL=https://${WPP_API_DOMINIO}.${DOMINIO_PRINCIPAL_CLIENTE}
- # Configura o Evolution para autenticar como API Key
- - AUTHENTICATION_TYPE=apikey
- # Define a API Key Global
- - AUTHENTICATION_API_KEY=${SENHA_GLOBAL}
- - DOCKER_ENV=true
- # Configura o Nível de Log
- - LOG_LEVEL=ERROR,WARN,DEBUG,INFO,LOG,VERBOSE,DARK,WEBHOOKS
- # Determina quanto tempo uma instância fica na memoria sem ser conectada
- # caso não queria remover instâncias sem conexão, deixe como false
- - DEL_INSTANCE=false
- # Configura o dispositivo
- - CONFIG_SESSION_PHONE_CLIENT=Nexxus Automation
- - CONFIG_SESSION_PHONE_NAME=Safari
- # *****************************************************************************************
- # Configura o Webhook
- # *****************************************************************************************
- # Armazena as mensagens temporariamente
- - STORE_MESSAGES=false
- # Armazena mensagens enviadas temporariamente
- - STORE_MESSAGE_UP=false
- # Armazenos os contatos temporariamente
- - STORE_CONTACTS=true
- # Armazena o ID das conversas que não estão arquivadas temporariamente
- - STORE_CHATS=false
- # *****************************************************************************************
- # Limpeza dos arquivos temporários
- # *****************************************************************************************
- # Configura o intervalo de limpeza dos arquivos temporários
- # O sistema vai limpar tudo a cada x tempo
- - CLEAN_STORE_CLEANING_INTERVAL=7200 # seconds === 2h
- # Habilita a limpeza das mensagens
- - CLEAN_STORE_MESSAGES=true
- # Habilita a limpeza das mensagens enviadas
- - CLEAN_STORE_MESSAGE_UP=true
- # Habilita a limpeza dos contatos
- - CLEAN_STORE_CONTACTS=true
- # Habilita a limpeza do ID das conversas que não estão arquivadas
- - CLEAN_STORE_CHATS=true
- # *****************************************************************************************
- # Autenticação da API
- # *****************************************************************************************
- # Define se a apikey será exibida quando for listar instâncias
- - AUTHENTICATION_EXPOSE_IN_FETCH_INSTANCES=true
- # Configura quantos qrcode serão gerados
- - QRCODE_LIMIT=30
- # *****************************************************************************************
- # Configurações do Webhook
- # *****************************************************************************************
- # Habilita o Webhook Global
- - WEBHOOK_GLOBAL_ENABLED=false
- # Define o endereço do Webhook Global
- - WEBHOOK_GLOBAL_URL=https://URL
- # Habilita ou Desabilita os Webhooks
- - WEBHOOK_GLOBAL_WEBHOOK_BY_EVENTS=false
- # Configura para receber o evento no inicio da aplicação
- - WEBHOOK_EVENTS_APPLICATION_STARTUP=false
- # Configura para Receber um Webhook quando o QRCode for gerado
- - WEBHOOK_EVENTS_QRCODE_UPDATED=false
- # Configura para enviar um webhook com todas as mensagens ao conectar ao whatsapp
- - WEBHOOK_EVENTS_MESSAGES_SET=false
- # Configura para enviar um webhook com as mensagens novas
- - WEBHOOK_EVENTS_MESSAGES_UPSERT=false
- # Configura para enviar um webhook com as mensagens atualizadas
- - WEBHOOK_EVENTS_MESSAGES_UPDATE=false
- # Configura para enviar um webhook com todos os contatos ao conectar ao whatsapp
- - WEBHOOK_EVENTS_CONTACTS_SET=false
- # Configura para enviar um webhook com os contatos novos
- - WEBHOOK_EVENTS_CONTACTS_UPSERT=false
- # Configura para enviar um webhook com os contatos atualizados
- - WEBHOOK_EVENTS_CONTACTS_UPDATE=false
- # Configura para enviar um webhook quando um contato estiver online
- - WEBHOOK_EVENTS_PRESENCE_UPDATE=false
- # Configura para enviar um webhook com todos os chats quando conectar ao whatsapp
- - WEBHOOK_EVENTS_CHATS_SET=false
- # Configura para enviar um webhook com os chats novos
- - WEBHOOK_EVENTS_CHATS_UPSERT=false
- # Configura para enviar um webhook com os chats atualizados
- - WEBHOOK_EVENTS_CHATS_UPDATE=false
- # Configura para enviar um webhook quando um chat for arquivado
- - WEBHOOK_EVENTS_CHATS_DELETE=false
- # Configura para enviar um webhook para quando um grupo for criado
- - WEBHOOK_EVENTS_GROUPS_UPSERT=false
- # Configura para enviar um webhook para quando um grupo for atualizado
- - WEBHOOK_EVENTS_GROUPS_UPDATE=false
- # Configura para enviar um webhook para quando participante entrar/sair do grupo
- - WEBHOOK_EVENTS_GROUP_PARTICIPANTS_UPDATE=true
- # Configura para enviar um webhook para quando a conexão cair ou voltar
- - WEBHOOK_EVENTS_CONNECTION_UPDATE=false
- # Configura o Redis
- - REDIS_ENABLED=false
- - REDIS_URI=redis://redis:6379
- # Configura o Modo de Deploy da Aplicação
- deploy:
- mode: replicated # sempre como replicated
- replicas: 1 # geralmente somente 1 réplica
- placement:
- constraints:
- - node.role == manager
- # - node.hostname == worker1
- resources:
- limits:
- # Define a quantidade de CPU para o Evolution para evitar travamento do Host
- cpus: "1"
- # Define a quantidade de RAM para o Evolution para evitar travamento do Host
- memory: 1024M
- labels:
- # Configura o Roteamento do Traefik
- - traefik.enable=true # habilita o traefik
- - traefik.http.routers.api-wpp.rule=Host(`${WPP_API_DOMINIO}.${DOMINIO_PRINCIPAL_CLIENTE}`) # define o endereço
- - traefik.http.routers.api-wpp.entrypoints=websecure # redireciona para SSL
- - traefik.http.routers.api-wpp.tls.certresolver=letsencryptresolver # configura o lets encrypt
- - traefik.http.routers.api-wpp.priority=1 # prioridade máxima para essa rota (padrão)
- - traefik.http.routers.api-wpp.service=api-wpp # define o nome do serviço
- - traefik.http.services.api-wpp.loadbalancer.server.port=8080 # define a porta que roda no container
- - traefik.http.services.api-wpp.loadbalancer.passHostHeader=true # passa todos os headers para o container
- volumes:
- api_wpp_instances:
- external: true
- name: api_wpp_instances
- api_wpp_store:
- external: true
- name: api_wpp_store
- networks:
- network_public:
- name: network_public
- external: true
Advertisement
Add Comment
Please, Sign In to add comment