Last active
December 10, 2024 21:28
-
-
Save samuelcaldas/d95976c1cc8760febb09667558052dc5 to your computer and use it in GitHub Desktop.
whatsapp-stack
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
version: "3.9" | |
services: | |
postgres: | |
image: postgres:14 | |
environment: | |
- POSTGRES_USER=postgres | |
- POSTGRES_PASSWORD=SenhaSeguraAqui | |
- POSTGRES_DB=n8ndb | |
- TZ=America/Sao_Paulo | |
volumes: | |
- stack_postgres_data:/var/lib/postgresql/data | |
networks: | |
- stack_public | |
deploy: | |
mode: replicated | |
replicas: 1 | |
placement: | |
constraints: | |
- node.role == manager | |
resources: | |
limits: | |
cpus: "0.5" | |
memory: 1024M | |
labels: | |
# Mantendo labels do Traefik para retrocompatibilidade | |
- traefik.enable=true | |
- traefik.http.routers.postgres.rule=Host(`postgres.alanweslley.com.br`) | |
- traefik.http.routers.postgres.entrypoints=websecure | |
- traefik.http.routers.postgres.tls.certresolver=letsencryptresolver | |
- traefik.http.services.postgres.loadbalancer.server.port=5432 | |
redis: | |
image: redis:latest | |
command: ["redis-server","--appendonly","yes","--port","6379"] | |
volumes: | |
- stack_redis_data:/data | |
networks: | |
- stack_public | |
deploy: | |
mode: replicated | |
replicas: 1 | |
placement: | |
constraints: | |
- node.role == manager | |
resources: | |
limits: | |
cpus: "0.5" | |
memory: 1024M | |
labels: | |
- traefik.enable=true | |
- traefik.http.routers.redis.rule=Host(`redis.alanweslley.com.br`) | |
- traefik.http.routers.redis.entrypoints=websecure | |
- traefik.http.routers.redis.tls.certresolver=letsencryptresolver | |
- traefik.http.services.redis.loadbalancer.server.port=6379 | |
n8n_editor: | |
image: n8nio/n8n:latest | |
command: start | |
environment: | |
- DB_TYPE=postgresdb | |
- DB_POSTGRESDB_DATABASE=n8ndb | |
- DB_POSTGRESDB_HOST=postgres | |
- DB_POSTGRESDB_PORT=5432 | |
- DB_POSTGRESDB_USER=postgres | |
- DB_POSTGRESDB_PASSWORD=SenhaSeguraAqui | |
- N8N_ENCRYPTION_KEY=ChaveGeradaUnicaAqui | |
- N8N_HOST=n8n.alanweslley.com.br | |
- N8N_EDITOR_BASE_URL=https://n8n.alanweslley.com.br/ | |
- N8N_PROTOCOL=https | |
- NODE_ENV=production | |
- WEBHOOK_URL=https://webhook.alanweslley.com.br/ | |
- EXECUTIONS_MODE=queue | |
- N8N_REINSTALL_MISSING_PACKAGES=true | |
- N8N_COMMUNITY_PACKAGES_ENABLED=true | |
- N8N_NODE_PATH=/home/node/.n8n/nodes | |
- QUEUE_BULL_REDIS_HOST=redis | |
- QUEUE_BULL_REDIS_PORT=6379 | |
- QUEUE_BULL_REDIS_DB=2 | |
- NODE_FUNCTION_ALLOW_EXTERNAL=moment,lodash,moment-with-locales | |
- EXECUTIONS_DATA_PRUNE=true | |
- EXECUTIONS_DATA_MAX_AGE=336 | |
- GENERIC_TIMEZONE=America/Sao_Paulo | |
- TZ=America/Sao_Paulo | |
volumes: | |
- stack_n8n_data:/home/node/.n8n | |
networks: | |
- stack_public | |
deploy: | |
mode: replicated | |
replicas: 1 | |
placement: | |
constraints: | |
- node.role == manager | |
resources: | |
limits: | |
cpus: "0.5" | |
memory: 1024M | |
labels: | |
- traefik.enable=true | |
- traefik.http.routers.n8n_editor.rule=Host(`n8n.alanweslley.com.br`) | |
- traefik.http.routers.n8n_editor.entrypoints=websecure | |
- traefik.http.routers.n8n_editor.tls.certresolver=letsencryptresolver | |
- traefik.http.services.n8n_editor.loadbalancer.server.port=5678 | |
n8n_webhook: | |
image: n8nio/n8n:latest | |
command: webhook | |
environment: | |
- DB_TYPE=postgresdb | |
- DB_POSTGRESDB_DATABASE=n8ndb | |
- DB_POSTGRESDB_HOST=postgres | |
- DB_POSTGRESDB_PORT=5432 | |
- DB_POSTGRESDB_USER=postgres | |
- DB_POSTGRESDB_PASSWORD=SenhaSeguraAqui | |
- N8N_ENCRYPTION_KEY=ChaveGeradaUnicaAqui | |
- N8N_HOST=n8n.alanweslley.com.br | |
- N8N_EDITOR_BASE_URL=https://n8n.alanweslley.com.br/ | |
- N8N_PROTOCOL=https | |
- NODE_ENV=production | |
- WEBHOOK_URL=https://webhook.alanweslley.com.br/ | |
- EXECUTIONS_MODE=queue | |
- N8N_REINSTALL_MISSING_PACKAGES=true | |
- N8N_COMMUNITY_PACKAGES_ENABLED=true | |
- N8N_NODE_PATH=/home/node/.n8n/nodes | |
- QUEUE_BULL_REDIS_HOST=redis | |
- QUEUE_BULL_REDIS_PORT=6379 | |
- QUEUE_BULL_REDIS_DB=2 | |
- NODE_FUNCTION_ALLOW_EXTERNAL=moment,lodash,moment-with-locales | |
- EXECUTIONS_DATA_PRUNE=true | |
- EXECUTIONS_DATA_MAX_AGE=336 | |
- GENERIC_TIMEZONE=America/Sao_Paulo | |
- TZ=America/Sao_Paulo | |
networks: | |
- stack_public | |
deploy: | |
mode: replicated | |
replicas: 2 | |
placement: | |
constraints: | |
- node.role == manager | |
resources: | |
limits: | |
cpus: "0.5" | |
memory: 1024M | |
labels: | |
- traefik.enable=true | |
- traefik.http.routers.n8n_webhook.rule=Host(`webhook.alanweslley.com.br`) | |
- traefik.http.routers.n8n_webhook.entrypoints=websecure | |
- traefik.http.routers.n8n_webhook.tls.certresolver=letsencryptresolver | |
- traefik.http.services.n8n_webhook.loadbalancer.server.port=5678 | |
n8n_worker: | |
image: n8nio/n8n:latest | |
command: worker --concurrency=10 | |
environment: | |
- DB_TYPE=postgresdb | |
- DB_POSTGRESDB_DATABASE=n8ndb | |
- DB_POSTGRESDB_HOST=postgres | |
- DB_POSTGRESDB_PORT=5432 | |
- DB_POSTGRESDB_USER=postgres | |
- DB_POSTGRESDB_PASSWORD=SenhaSeguraAqui | |
- N8N_ENCRYPTION_KEY=ChaveGeradaUnicaAqui | |
- N8N_HOST=n8n.alanweslley.com.br | |
- N8N_EDITOR_BASE_URL=https://n8n.alanweslley.com.br/ | |
- N8N_PROTOCOL=https | |
- NODE_ENV=production | |
- WEBHOOK_URL=https://webhook.alanweslley.com.br/ | |
- EXECUTIONS_MODE=queue | |
- N8N_REINSTALL_MISSING_PACKAGES=true | |
- N8N_COMMUNITY_PACKAGES_ENABLED=true | |
- N8N_NODE_PATH=/home/node/.n8n/nodes | |
- QUEUE_BULL_REDIS_HOST=redis | |
- QUEUE_BULL_REDIS_PORT=6379 | |
- QUEUE_BULL_REDIS_DB=2 | |
- NODE_FUNCTION_ALLOW_EXTERNAL=moment,lodash,moment-with-locales | |
- EXECUTIONS_DATA_PRUNE=true | |
- EXECUTIONS_DATA_MAX_AGE=336 | |
- GENERIC_TIMEZONE=America/Sao_Paulo | |
- TZ=America/Sao_Paulo | |
networks: | |
- stack_public | |
deploy: | |
mode: replicated | |
replicas: 1 | |
placement: | |
constraints: | |
- node.role == manager | |
resources: | |
limits: | |
cpus: "0.5" | |
memory: 1024M | |
meow: | |
image: aldinokemal2104/go-whatsapp-web-multidevice:latest | |
environment: | |
- PORT=3000 | |
- DEBUG=false | |
- TZ=America/Sao_Paulo | |
volumes: | |
- stack_meow_data:/app/data | |
networks: | |
- stack_public | |
deploy: | |
mode: replicated | |
replicas: 1 | |
placement: | |
constraints: | |
- node.role == manager | |
resources: | |
limits: | |
cpus: "0.5" | |
memory: 1024M | |
labels: | |
- traefik.enable=true | |
- traefik.http.routers.meow.rule=Host(`meow.alanweslley.com.br`) | |
- traefik.http.routers.meow.entrypoints=websecure | |
- traefik.http.routers.meow.tls.certresolver=letsencryptresolver | |
- traefik.http.services.meow.loadbalancer.server.port=3000 | |
networks: | |
stack_public: | |
driver: overlay | |
volumes: | |
stack_n8n_data: | |
stack_postgres_data: | |
stack_redis_data: | |
stack_meow_data: |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment