Last active
March 2, 2024 14:25
-
-
Save DRIMOL/6396b5599909b7abfd84ccfedf0b47c3 to your computer and use it in GitHub Desktop.
This file contains 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.7" | |
# Definição dos Serviços | |
services: | |
# Definição do Serviço do Editor | |
n8n_editor: | |
# imagem do docker | |
image: n8nio/n8n:1.6.1 | |
# comando padrão para subir o servidor web | |
command: start | |
# configura a rede do serviço | |
networks: | |
- network_public | |
# configura as variáveis de ambiente | |
environment: | |
# Define o Tipo de Banco de Dados para Postgres | |
- DB_TYPE=postgresdb | |
# Configura o Nome do Banco de Dados | |
- DB_POSTGRESDB_DATABASE=n8n | |
# Configura o Host do Banco de Dados | |
- DB_POSTGRESDB_HOST=postgres | |
# Configura a Porta do Banco de Dados | |
- DB_POSTGRESDB_PORT=5432 | |
# Configura o Usuário do Banco de Dados | |
- DB_POSTGRESDB_USER=postgres | |
# Configura a Senha do Banco de Dados | |
- DB_POSTGRESDB_PASSWORD=<<PASSWORD>> | |
# Cria uma chave de criptografia para o N8N | |
# Gere uma nova aqui https://www.allkeysgenerator.com/Random/Security-Encryption-Key-Generator.aspx | |
# escolha a opção GUID | |
- N8N_ENCRYPTION_KEY=<<KEY>> | |
# Configura o Host do Editor do N8N | |
- N8N_HOST=n8nsys.work.dev | |
# Configura o Endereço competo do Editor | |
- N8N_EDITOR_BASE_URL=https://n8nsys.work.dev/ | |
# Força o uso de SSL | |
- N8N_PROTOCOL=https | |
# Configura o ambiente de execução | |
- NODE_ENV=production | |
# Configura o Endereço do Webhook | |
- WEBHOOK_URL=https://n8nwhk.work.dev/ | |
# Configura o modo de execução para fila | |
- EXECUTIONS_MODE=queue | |
# Configura o host do Redis | |
- QUEUE_BULL_REDIS_HOST=redisn8n_redis | |
# Configura a porta do Redis | |
- QUEUE_BULL_REDIS_PORT=6379 | |
# Configura o indice do banco de dados do Redis | |
- QUEUE_BULL_REDIS_DB=2 | |
# Configura as bibliotecas externas que serão utilizadas | |
- NODE_FUNCTION_ALLOW_EXTERNAL=moment,lodash,moment-with-locales | |
# Configura a limpeza dos dados de execução | |
- EXECUTIONS_DATA_PRUNE=true | |
# Configura o tempo máximo de armazenamento dos dados de execução | |
- EXECUTIONS_DATA_MAX_AGE=336 # 2 semanas | |
# Configura o Modo de Deploy da Aplicação | |
- GENERIC_TIMEZONE=America/Recife | |
deploy: | |
# O editor será executado no modo de replicação | |
mode: replicated | |
# Vamos ter apenas uma instância do editor | |
replicas: 1 | |
# Configura o local de execução | |
placement: | |
constraints: | |
# Você pode rodar o Editor no Manager mesmo pois usa poucos recursos | |
#- node.role == manager | |
- node.hostname == system | |
# - node.labels.app == http # nome do label: app, valor do label: http | |
# Limitação | |
resources: | |
# Definição dos Limites de Recursos deste Serviço | |
limits: | |
# Define a quantidade de CPU para o CodeChat para evitar travamento do Host | |
cpus: "1" | |
# Define a quantidade de RAM para o CodeChat para evitar travamento do Host | |
memory: 1024M | |
labels: | |
# Configura o Roteamento do Traefik | |
- traefik.enable=true | |
- traefik.http.routers.n8n_editor.rule=Host(`n8nsys.work.dev`) | |
- traefik.http.routers.n8n_editor.entrypoints=websecure | |
- traefik.http.routers.n8n_editor.priority=1 | |
- traefik.http.routers.n8n_editor.tls.certresolver=letsencryptresolver | |
- traefik.http.routers.n8n_editor.service=n8n_editor | |
- traefik.http.services.n8n_editor.loadbalancer.server.port=5678 | |
- traefik.http.services.n8n_editor.loadbalancer.passHostHeader=1 | |
n8n_webhook: | |
# imagem do docker | |
image: n8nio/n8n:1.6.1 | |
# comando padrão para subir o servidor web | |
command: webhook | |
# configura a rede do serviço | |
networks: | |
- network_public | |
# configura as variáveis de ambiente | |
environment: | |
# Define o Tipo de Banco de Dados para Postgres | |
- DB_TYPE=postgresdb | |
# Configura o Nome do Banco de Dados | |
- DB_POSTGRESDB_DATABASE=n8n | |
# Configura o Host do Banco de Dados | |
- DB_POSTGRESDB_HOST=postgres | |
# Configura a Porta do Banco de Dados | |
- DB_POSTGRESDB_PORT=5432 | |
# Configura o Usuário do Banco de Dados | |
- DB_POSTGRESDB_USER=postgres | |
# Configura a Senha do Banco de Dados | |
- DB_POSTGRESDB_PASSWORD=<<PASSWORD>> | |
# usa a mesma chave criada no editor | |
- N8N_ENCRYPTION_KEY=<<encript>> | |
# Configura o Host do Editor do N8N | |
- N8N_HOST=n8nsys.work.dev | |
# Configura o Endereço competo do Editor | |
- N8N_EDITOR_BASE_URL=https://n8nsys.work.dev/ | |
# Força o uso de SSL | |
- N8N_PROTOCOL=https | |
# Configura o ambiente de execução | |
- NODE_ENV=production | |
# Configura o Endereço do Webhook | |
- WEBHOOK_URL=https://n8nwhk.work.dev/ | |
# Configura o modo de execução para fila | |
- EXECUTIONS_MODE=queue | |
# Configura o host do Redis | |
- QUEUE_BULL_REDIS_HOST=redisn8n_redis | |
# Configura a porta do Redis | |
- QUEUE_BULL_REDIS_PORT=6379 | |
# Configura o indice do banco de dados do Redis | |
- QUEUE_BULL_REDIS_DB=2 | |
# Configura as bibliotecas externas que serão utilizadas | |
- NODE_FUNCTION_ALLOW_EXTERNAL=moment,lodash,moment-with-locales | |
# Configura a limpeza dos dados de execução | |
- EXECUTIONS_DATA_PRUNE=true | |
# Configura o tempo máximo de armazenamento dos dados de execução | |
- EXECUTIONS_DATA_MAX_AGE=336 # 2 semanas | |
# Configura o Modo de Deploy da Aplicação | |
- GENERIC_TIMEZONE=America/Recife | |
deploy: | |
# O editor será executado no modo de replicação | |
mode: replicated | |
# Vamos ter apenas uma instância do editor | |
replicas: 1 | |
# Configura o local de execução | |
placement: | |
# Você pode rodar o Editor no Manager mesmo pois usa poucos recursos | |
constraints: | |
#- node.role == manager | |
- node.hostname == system | |
# - node.labels.app == workers # nome do label: app, valor do label: workers | |
resources: | |
# Definição dos Limites de Recursos deste Serviço | |
limits: | |
# Define a quantidade de CPU para o CodeChat para evitar travamento do Host | |
cpus: "1" | |
# Define a quantidade de RAM para o CodeChat para evitar travamento do Host | |
memory: 1024M | |
labels: | |
# Configura o Roteamento do Traefik | |
- traefik.enable=true | |
- traefik.http.routers.n8n_webhook.rule=(Host(`n8nwhk.work.dev`)) | |
- traefik.http.routers.n8n_webhook.entrypoints=websecure | |
- traefik.http.routers.n8n_webhook.priority=1 | |
- traefik.http.routers.n8n_webhook.tls.certresolver=letsencryptresolver | |
- traefik.http.routers.n8n_webhook.service=n8n_webhook | |
- traefik.http.services.n8n_webhook.loadbalancer.server.port=5678 | |
- traefik.http.services.n8n_webhook.loadbalancer.passHostHeader=1 | |
n8n_worker: | |
# imagem do docker | |
image: n8nio/n8n:1.6.1 | |
# comando padrão para subir o servidor web | |
command: worker --concurrency=10 | |
# configura a rede do serviço | |
networks: | |
- network_public | |
# configura as variáveis de ambiente | |
environment: | |
# Define o Tipo de Banco de Dados para Postgres | |
- DB_TYPE=postgresdb | |
# Configura o Nome do Banco de Dados | |
- DB_POSTGRESDB_DATABASE=n8n | |
# Configura o Host do Banco de Dados | |
- DB_POSTGRESDB_HOST=postgres | |
# Configura a Porta do Banco de Dados | |
- DB_POSTGRESDB_PORT=5432 | |
# Configura o Usuário do Banco de Dados | |
- DB_POSTGRESDB_USER=postgres | |
# Configura a Senha do Banco de Dados | |
- DB_POSTGRESDB_PASSWORD=<<PASSWORD>> | |
# usa a mesma chave criada no editor | |
- N8N_ENCRYPTION_KEY=<<encript>> | |
# Configura o Host do Editor do N8N | |
- N8N_HOST=n8nsys.work.dev | |
# Configura o Endereço competo do Editor | |
- N8N_EDITOR_BASE_URL=https://n8nsys.work.dev | |
# Força o uso de SSL | |
- N8N_PROTOCOL=https | |
# Configura o ambiente de execução | |
- NODE_ENV=production | |
# Configura o Endereço do Webhook | |
- WEBHOOK_URL=https://n8nwhk.work.dev/ | |
# Configura o modo de execução para fila | |
- EXECUTIONS_MODE=queue | |
# Configura o host do Redis | |
- QUEUE_BULL_REDIS_HOST=redisn8n_redis | |
# Configura a porta do Redis | |
- QUEUE_BULL_REDIS_PORT=6379 | |
# Configura o indice do banco de dados do Redis | |
- QUEUE_BULL_REDIS_DB=2 | |
# Configura as bibliotecas externas que serão utilizadas | |
- NODE_FUNCTION_ALLOW_EXTERNAL=moment,lodash,moment-with-locales | |
# Configura a limpeza dos dados de execução | |
- EXECUTIONS_DATA_PRUNE=true | |
# Configura o tempo máximo de armazenamento dos dados de execução | |
- EXECUTIONS_DATA_MAX_AGE=336 # 2 semanas | |
# Configura o Modo de Deploy da Aplicação | |
- GENERIC_TIMEZONE=America/Recife | |
deploy: | |
# O editor será executado no modo de replicação | |
mode: replicated | |
# Vamos ter apenas uma instância do editor | |
replicas: 1 | |
# Configura o local de execução | |
placement: | |
# Você pode rodar o Editor no Manager mesmo pois usa poucos recursos | |
constraints: | |
#- node.role == manager | |
- node.hostname == system | |
# - node.labels.app == webhooks # nome do label: app, valor do label: webhooks | |
resources: | |
# Definição dos Limites de Recursos deste Serviço | |
limits: | |
# Define a quantidade de CPU para o CodeChat para evitar travamento do Host | |
cpus: "1" | |
# Define a quantidade de RAM para o CodeChat para evitar travamento do Host | |
memory: 1024M | |
networks: | |
network_public: | |
name: network_public | |
external: true |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment