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