Evolution API
Evolution API is a robust platform dedicated to empowering small businesses with limited resources, going beyond a simple messaging solution via WhatsApp.
Configuration
services:
evolution-api:
image: atendai/evolution-api:v2.1.2
restart: always
volumes:
- evolution-instances:/evolution/instances
environment:
- SERVER_URL=${SERVER_URL}
- AUTHENTICATION_TYPE=${AUTHENTICATION_TYPE}
- AUTHENTICATION_API_KEY=${AUTHENTICATION_API_KEY}
- AUTHENTICATION_EXPOSE_IN_FETCH_INSTANCES=${AUTHENTICATION_EXPOSE_IN_FETCH_INSTANCES}
- LANGUAGE=${LANGUAGE}
- CONFIG_SESSION_PHONE_CLIENT=${CONFIG_SESSION_PHONE_CLIENT}
- CONFIG_SESSION_PHONE_NAME=${CONFIG_SESSION_PHONE_NAME}
- TELEMETRY=${TELEMETRY}
- TELEMETRY_URL=${TELEMETRY_URL}
- DATABASE_ENABLED=${DATABASE_ENABLED}
- DATABASE_PROVIDER=${DATABASE_PROVIDER}
- DATABASE_CONNECTION_URI=${DATABASE_CONNECTION_URI}
- 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}
- CACHE_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}
evolution-postgres:
image: postgres:16-alpine
restart: always
volumes:
- evolution-postgres-data:/var/lib/postgresql/data
environment:
- POSTGRES_DB=${POSTGRES_DATABASE}
- POSTGRES_USER=${POSTGRES_USERNAME}
- POSTGRES_PASSWORD=${POSTGRES_PASSWORD}
evolution-redis:
image: redis:alpine
restart: always
volumes:
- evolution-redis-data:/data
volumes:
evolution-instances:
evolution-postgres-data:
evolution-redis-data:[variables]
main_domain = "${domain}"
api_key = "${base64:64}"
postgres_password = "${password}"
[config]
env = [
"SERVER_URL=https://${main_domain}",
"AUTHENTICATION_TYPE=apikey",
"AUTHENTICATION_API_KEY=${api_key}",
"AUTHENTICATION_EXPOSE_IN_FETCH_INSTANCES=true",
"LANGUAGE=en",
"CONFIG_SESSION_PHONE_CLIENT=Evolution API",
"CONFIG_SESSION_PHONE_NAME=Chrome",
"TELEMETRY=false",
"TELEMETRY_URL=",
"POSTGRES_DATABASE=evolution",
"POSTGRES_USERNAME=postgresql",
"POSTGRES_PASSWORD=${postgres_password}",
"DATABASE_ENABLED=true",
"DATABASE_PROVIDER=postgresql",
"DATABASE_CONNECTION_URI=postgres://postgresql:${postgres_password}@evolution-postgres:5432/evolution",
"DATABASE_SAVE_DATA_INSTANCE=true",
"DATABASE_SAVE_DATA_NEW_MESSAGE=true",
"DATABASE_SAVE_MESSAGE_UPDATE=true",
"DATABASE_SAVE_DATA_CONTACTS=true",
"DATABASE_SAVE_DATA_CHATS=true",
"DATABASE_SAVE_DATA_LABELS=true",
"DATABASE_SAVE_DATA_HISTORIC=true",
"CACHE_REDIS_ENABLED=true",
"CACHE_REDIS_URI=redis://evolution-redis:6379",
"CACHE_REDIS_PREFIX_KEY=evolution",
"CACHE_REDIS_SAVE_INSTANCES=true",
]
mounts = []
[[config.domains]]
serviceName = "evolution-api"
port = 8_080
host = "${main_domain}"Base64
To import this template in Dokploy: create a Compose service → Advanced → Base64 import and paste the content below:
ewogICJjb21wb3NlIjogInNlcnZpY2VzOlxuICBldm9sdXRpb24tYXBpOlxuICAgIGltYWdlOiBhdGVuZGFpL2V2b2x1dGlvbi1hcGk6djIuMS4yXG4gICAgcmVzdGFydDogYWx3YXlzXG4gICAgdm9sdW1lczpcbiAgICAgIC0gZXZvbHV0aW9uLWluc3RhbmNlczovZXZvbHV0aW9uL2luc3RhbmNlc1xuXG4gICAgZW52aXJvbm1lbnQ6XG4gICAgICAtIFNFUlZFUl9VUkw9JHtTRVJWRVJfVVJMfVxuICAgICAgLSBBVVRIRU5USUNBVElPTl9UWVBFPSR7QVVUSEVOVElDQVRJT05fVFlQRX1cbiAgICAgIC0gQVVUSEVOVElDQVRJT05fQVBJX0tFWT0ke0FVVEhFTlRJQ0FUSU9OX0FQSV9LRVl9XG4gICAgICAtIEFVVEhFTlRJQ0FUSU9OX0VYUE9TRV9JTl9GRVRDSF9JTlNUQU5DRVM9JHtBVVRIRU5USUNBVElPTl9FWFBPU0VfSU5fRkVUQ0hfSU5TVEFOQ0VTfVxuICAgICAgLSBMQU5HVUFHRT0ke0xBTkdVQUdFfVxuICAgICAgLSBDT05GSUdfU0VTU0lPTl9QSE9ORV9DTElFTlQ9JHtDT05GSUdfU0VTU0lPTl9QSE9ORV9DTElFTlR9XG4gICAgICAtIENPTkZJR19TRVNTSU9OX1BIT05FX05BTUU9JHtDT05GSUdfU0VTU0lPTl9QSE9ORV9OQU1FfVxuICAgICAgLSBURUxFTUVUUlk9JHtURUxFTUVUUll9XG4gICAgICAtIFRFTEVNRVRSWV9VUkw9JHtURUxFTUVUUllfVVJMfVxuICAgICAgLSBEQVRBQkFTRV9FTkFCTEVEPSR7REFUQUJBU0VfRU5BQkxFRH1cbiAgICAgIC0gREFUQUJBU0VfUFJPVklERVI9JHtEQVRBQkFTRV9QUk9WSURFUn1cbiAgICAgIC0gREFUQUJBU0VfQ09OTkVDVElPTl9VUkk9JHtEQVRBQkFTRV9DT05ORUNUSU9OX1VSSX1cbiAgICAgIC0gREFUQUJBU0VfU0FWRV9EQVRBX0lOU1RBTkNFPSR7REFUQUJBU0VfU0FWRV9EQVRBX0lOU1RBTkNFfVxuICAgICAgLSBEQVRBQkFTRV9TQVZFX0RBVEFfTkVXX01FU1NBR0U9JHtEQVRBQkFTRV9TQVZFX0RBVEFfTkVXX01FU1NBR0V9XG4gICAgICAtIERBVEFCQVNFX1NBVkVfTUVTU0FHRV9VUERBVEU9JHtEQVRBQkFTRV9TQVZFX01FU1NBR0VfVVBEQVRFfVxuICAgICAgLSBEQVRBQkFTRV9TQVZFX0RBVEFfQ09OVEFDVFM9JHtEQVRBQkFTRV9TQVZFX0RBVEFfQ09OVEFDVFN9XG4gICAgICAtIERBVEFCQVNFX1NBVkVfREFUQV9DSEFUUz0ke0RBVEFCQVNFX1NBVkVfREFUQV9DSEFUU31cbiAgICAgIC0gREFUQUJBU0VfU0FWRV9EQVRBX0xBQkVMUz0ke0RBVEFCQVNFX1NBVkVfREFUQV9MQUJFTFN9XG4gICAgICAtIERBVEFCQVNFX1NBVkVfREFUQV9ISVNUT1JJQz0ke0RBVEFCQVNFX1NBVkVfREFUQV9ISVNUT1JJQ31cbiAgICAgIC0gQ0FDSEVfUkVESVNfRU5BQkxFRD0ke0NBQ0hFX1JFRElTX0VOQUJMRUR9XG4gICAgICAtIENBQ0hFX1JFRElTX1VSST0ke0NBQ0hFX1JFRElTX1VSSX1cbiAgICAgIC0gQ0FDSEVfUkVESVNfUFJFRklYX0tFWT0ke0NBQ0hFX1JFRElTX1BSRUZJWF9LRVl9XG4gICAgICAtIENBQ0hFX1JFRElTX1NBVkVfSU5TVEFOQ0VTPSR7Q0FDSEVfUkVESVNfU0FWRV9JTlNUQU5DRVN9XG5cbiAgZXZvbHV0aW9uLXBvc3RncmVzOlxuICAgIGltYWdlOiBwb3N0Z3JlczoxNi1hbHBpbmVcbiAgICByZXN0YXJ0OiBhbHdheXNcbiAgICB2b2x1bWVzOlxuICAgICAgLSBldm9sdXRpb24tcG9zdGdyZXMtZGF0YTovdmFyL2xpYi9wb3N0Z3Jlc3FsL2RhdGFcblxuICAgIGVudmlyb25tZW50OlxuICAgICAgLSBQT1NUR1JFU19EQj0ke1BPU1RHUkVTX0RBVEFCQVNFfVxuICAgICAgLSBQT1NUR1JFU19VU0VSPSR7UE9TVEdSRVNfVVNFUk5BTUV9XG4gICAgICAtIFBPU1RHUkVTX1BBU1NXT1JEPSR7UE9TVEdSRVNfUEFTU1dPUkR9XG5cbiAgZXZvbHV0aW9uLXJlZGlzOlxuICAgIGltYWdlOiByZWRpczphbHBpbmVcbiAgICByZXN0YXJ0OiBhbHdheXNcbiAgICB2b2x1bWVzOlxuICAgICAgLSBldm9sdXRpb24tcmVkaXMtZGF0YTovZGF0YVxuXG52b2x1bWVzOlxuICBldm9sdXRpb24taW5zdGFuY2VzOlxuICBldm9sdXRpb24tcG9zdGdyZXMtZGF0YTpcbiAgZXZvbHV0aW9uLXJlZGlzLWRhdGE6IiwKICAiY29uZmlnIjogIlt2YXJpYWJsZXNdXG5tYWluX2RvbWFpbiA9IFwiJHtkb21haW59XCJcbmFwaV9rZXkgPSBcIiR7YmFzZTY0OjY0fVwiXG5wb3N0Z3Jlc19wYXNzd29yZCA9IFwiJHtwYXNzd29yZH1cIlxuXG5bY29uZmlnXVxuZW52ID0gW1xuICBcIlNFUlZFUl9VUkw9aHR0cHM6Ly8ke21haW5fZG9tYWlufVwiLFxuICBcIkFVVEhFTlRJQ0FUSU9OX1RZUEU9YXBpa2V5XCIsXG4gIFwiQVVUSEVOVElDQVRJT05fQVBJX0tFWT0ke2FwaV9rZXl9XCIsXG4gIFwiQVVUSEVOVElDQVRJT05fRVhQT1NFX0lOX0ZFVENIX0lOU1RBTkNFUz10cnVlXCIsXG4gIFwiTEFOR1VBR0U9ZW5cIixcbiAgXCJDT05GSUdfU0VTU0lPTl9QSE9ORV9DTElFTlQ9RXZvbHV0aW9uIEFQSVwiLFxuICBcIkNPTkZJR19TRVNTSU9OX1BIT05FX05BTUU9Q2hyb21lXCIsXG4gIFwiVEVMRU1FVFJZPWZhbHNlXCIsXG4gIFwiVEVMRU1FVFJZX1VSTD1cIixcbiAgXCJQT1NUR1JFU19EQVRBQkFTRT1ldm9sdXRpb25cIixcbiAgXCJQT1NUR1JFU19VU0VSTkFNRT1wb3N0Z3Jlc3FsXCIsXG4gIFwiUE9TVEdSRVNfUEFTU1dPUkQ9JHtwb3N0Z3Jlc19wYXNzd29yZH1cIixcbiAgXCJEQVRBQkFTRV9FTkFCTEVEPXRydWVcIixcbiAgXCJEQVRBQkFTRV9QUk9WSURFUj1wb3N0Z3Jlc3FsXCIsXG4gIFwiREFUQUJBU0VfQ09OTkVDVElPTl9VUkk9cG9zdGdyZXM6Ly9wb3N0Z3Jlc3FsOiR7cG9zdGdyZXNfcGFzc3dvcmR9QGV2b2x1dGlvbi1wb3N0Z3Jlczo1NDMyL2V2b2x1dGlvblwiLFxuICBcIkRBVEFCQVNFX1NBVkVfREFUQV9JTlNUQU5DRT10cnVlXCIsXG4gIFwiREFUQUJBU0VfU0FWRV9EQVRBX05FV19NRVNTQUdFPXRydWVcIixcbiAgXCJEQVRBQkFTRV9TQVZFX01FU1NBR0VfVVBEQVRFPXRydWVcIixcbiAgXCJEQVRBQkFTRV9TQVZFX0RBVEFfQ09OVEFDVFM9dHJ1ZVwiLFxuICBcIkRBVEFCQVNFX1NBVkVfREFUQV9DSEFUUz10cnVlXCIsXG4gIFwiREFUQUJBU0VfU0FWRV9EQVRBX0xBQkVMUz10cnVlXCIsXG4gIFwiREFUQUJBU0VfU0FWRV9EQVRBX0hJU1RPUklDPXRydWVcIixcbiAgXCJDQUNIRV9SRURJU19FTkFCTEVEPXRydWVcIixcbiAgXCJDQUNIRV9SRURJU19VUkk9cmVkaXM6Ly9ldm9sdXRpb24tcmVkaXM6NjM3OVwiLFxuICBcIkNBQ0hFX1JFRElTX1BSRUZJWF9LRVk9ZXZvbHV0aW9uXCIsXG4gIFwiQ0FDSEVfUkVESVNfU0FWRV9JTlNUQU5DRVM9dHJ1ZVwiLFxuXVxubW91bnRzID0gW11cblxuW1tjb25maWcuZG9tYWluc11dXG5zZXJ2aWNlTmFtZSA9IFwiZXZvbHV0aW9uLWFwaVwiXG5wb3J0ID0gOF8wODBcbmhvc3QgPSBcIiR7bWFpbl9kb21haW59XCJcbiIKfQ==Links
Tags
api, whatsapp, messaging
Version: v2.1.2