Advertisement
dSantana17

Instalando N8N - Stack

Jun 30th, 2024
83
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 12.77 KB | None | 0 0
  1. Stack do Redis
  2. -------
  3. version: "3.7"
  4.  
  5. services:
  6. redis:
  7. image: redis:latest
  8. command: [
  9. "redis-server",
  10. "--appendonly",
  11. "yes",
  12. "--port",
  13. "6379"
  14. ]
  15. volumes:
  16. - redis_data:/data
  17. networks:
  18. - network_public
  19. deploy:
  20. placement:
  21. constraints:
  22. - node.role == manager
  23. resources:
  24. limits:
  25. cpus: "1"
  26. memory: 1024M
  27.  
  28. volumes:
  29. redis_data:
  30. external: true
  31. name: redis_data
  32.  
  33. networks:
  34. network_public:
  35. external: true
  36. name: network_public
  37. ----------------------------------------
  38.  
  39.  
  40.  
  41. Stack do Postgres
  42. ---------
  43. version: "3.7"
  44.  
  45. services:
  46. postgres:
  47. image: postgres:14
  48. environment:
  49. - POSTGRES_PASSWORD=QwS3JzX2kcCF5K
  50. - TZ=America/Sao_Paulo
  51. - POSTGRES_DB=postgres
  52. networks:
  53. - network_public
  54. ports:
  55. - 5432:5432
  56. volumes:
  57. - postgres_data:/var/lib/postgresql/data
  58. deploy:
  59. mode: replicated
  60. replicas: 1
  61. placement:
  62. constraints:
  63. - node.role == manager
  64. resources:
  65. limits:
  66. cpus: "1"
  67. memory: 1024M
  68.  
  69. volumes:
  70. postgres_data:
  71. external: true
  72. name: postgres_data
  73.  
  74. networks:
  75. network_public:
  76. external: true
  77. name: network_public
  78.  
  79.  
  80.  
  81. Obs:
  82.  
  83. CRIAR BANCO DE DADOS DO N8N n8n_queue
  84. psql -U postgres -c "CREATE DATABASE n8n_queue;"
  85.  
  86.  
  87. ---------------------------------
  88.  
  89.  
  90.  
  91.  
  92.  
  93.  
  94.  
  95.  
  96. Stack do N8N
  97. ------------
  98. ${N8N_DOMINIO_WEBHOOK}
  99. ${N8N_DOMINIO_EDITOR}
  100. ${DOMINIO_PRINCIPAL_CLIENTE}
  101. ${POSTGRES_SENHA}
  102.  
  103.  
  104. version: "3.7"
  105.  
  106. # Definição dos Serviços
  107. services:
  108. # Definição do Serviço do Editor
  109. n8n_editor:
  110. # imagem do docker
  111. image: n8nio/n8n:1.41.0
  112. # comando padrão para subir o servidor web
  113. command: start
  114. # configura a rede do serviço
  115. networks:
  116. - network_public
  117. # configura as variáveis de ambiente
  118. environment:
  119. - GENERIC_TIMEZONE=America/Sao_Paulo
  120. # Define o Tipo de Banco de Dados para Postgres
  121. - DB_TYPE=postgresdb
  122. # Configura o Nome do Banco de Dados
  123. - DB_POSTGRESDB_DATABASE=n8n_queue
  124. # Configura o Host do Banco de Dados
  125. - DB_POSTGRESDB_HOST=postgres
  126. # Configura a Porta do Banco de Dados
  127. - DB_POSTGRESDB_PORT=5432
  128. # Configura o Usuário do Banco de Dados
  129. - DB_POSTGRESDB_USER=postgres
  130. # Configura a Senha do Banco de Dados
  131. - DB_POSTGRESDB_PASSWORD=${POSTGRES_SENHA}
  132. # Cria uma chave de criptografia para o N8N
  133. # Gere uma nova aqui https://www.allkeysgenerator.com/Random/Security-Encryption-Key-Generator.aspx
  134. # escolha a opção GUID
  135. - N8N_ENCRYPTION_KEY=3DA3144FD4965723
  136. # Configura o Host do Editor do N8N
  137. - N8N_HOST=${N8N_DOMINIO_EDITOR}.${DOMINIO_PRINCIPAL_CLIENTE}
  138. # Configura o Endereço competo do Editor
  139. - N8N_EDITOR_BASE_URL=https://${N8N_DOMINIO_EDITOR}.${DOMINIO_PRINCIPAL_CLIENTE}/
  140. # Força o uso de SSL
  141. - N8N_PROTOCOL=https
  142. # Configura o ambiente de execução
  143. - NODE_ENV=production
  144. # Configura o Endereço do Webhook
  145. - WEBHOOK_URL=https://${N8N_DOMINIO_WEBHOOK}.${DOMINIO_PRINCIPAL_CLIENTE}/
  146. # Configura o modo de execução para fila
  147. - EXECUTIONS_MODE=queue
  148. # Configura o host do Redis
  149. - QUEUE_BULL_REDIS_HOST=redis
  150. # Configura a porta do Redis
  151. - QUEUE_BULL_REDIS_PORT=6379
  152. # Configura o indice do banco de dados do Redis
  153. - QUEUE_BULL_REDIS_DB=2
  154. # Configura as bibliotecas externas que serão utilizadas
  155. - NODE_FUNCTION_ALLOW_BUILTIN=*
  156. - NODE_FUNCTION_ALLOW_EXTERNAL=moment,lodash,moment-with-locales,axios,crypto
  157. # Configura a limpeza dos dados de execução
  158. - EXECUTIONS_DATA_PRUNE=true
  159. # Configura o tempo máximo de armazenamento dos dados de execução
  160. - EXECUTIONS_DATA_MAX_AGE=72 # 3 dias
  161. - N8N_PERSONALIZATION_ENABLED=true
  162. - N8N_PUSH_BACKEND=websocket
  163. - N8N_VERSION_NOTIFICATIONS_ENABLED=false
  164. - EXECUTIONS_TIMEOUT=3600
  165. - N8N_WORKFLOW_TAGS_DISABLED=false
  166. - N8N_HIDE_USAGE_PAGE=true
  167. - N8N_BLOCK_FILE_ACCESS_TO_N8N_FILES=false
  168. # Configura o Modo de Deploy da Aplicação
  169. deploy:
  170. # O editor será executado no modo de replicação
  171. mode: replicated
  172. # Vamos ter apenas uma instância do editor
  173. replicas: 1
  174. # Configura o local de execução
  175. placement:
  176. constraints:
  177. # Você pode rodar o Editor no Manager mesmo pois usa poucos recursos
  178. - node.role == manager
  179. # - node.hostname == dsantana-manager1
  180. # - node.labels.app == http # nome do label: app, valor do label: http
  181. # Limitação
  182. resources:
  183. # Definição dos Limites de Recursos deste Serviço
  184. limits:
  185. # Define a quantidade de CPU para o CodeChat para evitar travamento do Host
  186. cpus: "1"
  187. # Define a quantidade de RAM para o CodeChat para evitar travamento do Host
  188. memory: 1024M
  189. labels:
  190. # Configura o Roteamento do Traefik
  191. - traefik.enable=true
  192. - traefik.http.routers.n8n_editor.rule=Host(`${N8N_DOMINIO_EDITOR}.${DOMINIO_PRINCIPAL_CLIENTE}`)
  193. - traefik.http.routers.n8n_editor.entrypoints=websecure
  194. - traefik.http.routers.n8n_editor.priority=1
  195. - traefik.http.routers.n8n_editor.tls.certresolver=letsencryptresolver
  196. - traefik.http.routers.n8n_editor.service=n8n_editor
  197. - traefik.http.services.n8n_editor.loadbalancer.server.port=5678
  198. - traefik.http.services.n8n_editor.loadbalancer.passHostHeader=1
  199.  
  200. n8n_webhook:
  201. # imagem do docker
  202. image: n8nio/n8n:1.41.0
  203. # comando padrão para subir o servidor web
  204. command: webhook
  205. # configura a rede do serviço
  206. networks:
  207. - network_public
  208. # configura as variáveis de ambiente
  209. environment:
  210. - GENERIC_TIMEZONE=America/Sao_Paulo
  211. # Define o Tipo de Banco de Dados para Postgres
  212. - DB_TYPE=postgresdb
  213. # Configura o Nome do Banco de Dados
  214. - DB_POSTGRESDB_DATABASE=n8n_queue
  215. # Configura o Host do Banco de Dados
  216. - DB_POSTGRESDB_HOST=postgres
  217. # Configura a Porta do Banco de Dados
  218. - DB_POSTGRESDB_PORT=5432
  219. # Configura o Usuário do Banco de Dados
  220. - DB_POSTGRESDB_USER=postgres
  221. # Configura a Senha do Banco de Dados
  222. - DB_POSTGRESDB_PASSWORD=${POSTGRES_SENHA}
  223. # usa a mesma chave criada no editor
  224. - N8N_ENCRYPTION_KEY=3DA3144FD4965723
  225. # Configura o Host do Editor do N8N
  226. - N8N_HOST=${N8N_DOMINIO_EDITOR}.${DOMINIO_PRINCIPAL_CLIENTE}
  227. # Configura o Endereço competo do Editor
  228. - N8N_EDITOR_BASE_URL=https://${N8N_DOMINIO_EDITOR}.${DOMINIO_PRINCIPAL_CLIENTE}/
  229. # Força o uso de SSL
  230. - N8N_PROTOCOL=https
  231. # Configura o ambiente de execução
  232. - NODE_ENV=production
  233. # Configura o Endereço do Webhook
  234. - WEBHOOK_URL=https://${N8N_DOMINIO_WEBHOOK}.${DOMINIO_PRINCIPAL_CLIENTE}/
  235. # Configura o modo de execução para fila
  236. - EXECUTIONS_MODE=queue
  237. # Configura o host do Redis
  238. - QUEUE_BULL_REDIS_HOST=redis
  239. # Configura a porta do Redis
  240. - QUEUE_BULL_REDIS_PORT=6379
  241. # Configura o indice do banco de dados do Redis
  242. - QUEUE_BULL_REDIS_DB=2
  243. # Configura as bibliotecas externas que serão utilizadas
  244. - NODE_FUNCTION_ALLOW_BUILTIN=*
  245. - NODE_FUNCTION_ALLOW_EXTERNAL=moment,lodash,moment-with-locales,axios,crypto
  246. # Configura a limpeza dos dados de execução
  247. - EXECUTIONS_DATA_PRUNE=true
  248. # Configura o tempo máximo de armazenamento dos dados de execução
  249. - EXECUTIONS_DATA_MAX_AGE=72 # 3 dias
  250. - N8N_PERSONALIZATION_ENABLED=true
  251. - N8N_PUSH_BACKEND=websocket
  252. - N8N_VERSION_NOTIFICATIONS_ENABLED=false
  253. - EXECUTIONS_TIMEOUT=3600
  254. - N8N_WORKFLOW_TAGS_DISABLED=false
  255. - N8N_HIDE_USAGE_PAGE=true
  256. - N8N_BLOCK_FILE_ACCESS_TO_N8N_FILES=false
  257. # Configura o Modo de Deploy da Aplicação
  258. deploy:
  259. # O editor será executado no modo de replicação
  260. mode: replicated
  261. # Vamos ter apenas uma instância do editor
  262. replicas: 1
  263. # Configura o local de execução
  264. placement:
  265. # Você pode rodar o Editor no Manager mesmo pois usa poucos recursos
  266. constraints:
  267. - node.role == manager
  268. # - node.hostname == dsantana-manager1
  269. # - node.labels.app == workers # nome do label: app, valor do label: workers
  270. resources:
  271. # Definição dos Limites de Recursos deste Serviço
  272. limits:
  273. # Define a quantidade de CPU para o CodeChat para evitar travamento do Host
  274. cpus: "1"
  275. # Define a quantidade de RAM para o CodeChat para evitar travamento do Host
  276. memory: 1024M
  277. labels:
  278. # Configura o Roteamento do Traefik
  279. - traefik.enable=true
  280. - traefik.http.routers.n8n_webhook.rule=(Host(`${N8N_DOMINIO_WEBHOOK}.${DOMINIO_PRINCIPAL_CLIENTE}`))
  281. - traefik.http.routers.n8n_webhook.entrypoints=websecure
  282. - traefik.http.routers.n8n_webhook.priority=1
  283. - traefik.http.routers.n8n_webhook.tls.certresolver=letsencryptresolver
  284. - traefik.http.routers.n8n_webhook.service=n8n_webhook
  285. - traefik.http.services.n8n_webhook.loadbalancer.server.port=5678
  286. - traefik.http.services.n8n_webhook.loadbalancer.passHostHeader=1
  287.  
  288. n8n_worker:
  289. # imagem do docker
  290. image: n8nio/n8n:1.41.0
  291. # comando padrão para subir o servidor web
  292. command: worker --concurrency=10
  293. # configura a rede do serviço
  294. networks:
  295. - network_public
  296. # configura as variáveis de ambiente
  297. environment:
  298. - GENERIC_TIMEZONE=America/Sao_Paulo
  299. # Define o Tipo de Banco de Dados para Postgres
  300. - DB_TYPE=postgresdb
  301. # Configura o Nome do Banco de Dados
  302. - DB_POSTGRESDB_DATABASE=n8n_queue
  303. # Configura o Host do Banco de Dados
  304. - DB_POSTGRESDB_HOST=postgres
  305. # Configura a Porta do Banco de Dados
  306. - DB_POSTGRESDB_PORT=5432
  307. # Configura o Usuário do Banco de Dados
  308. - DB_POSTGRESDB_USER=postgres
  309. # Configura a Senha do Banco de Dados
  310. - DB_POSTGRESDB_PASSWORD=${POSTGRES_SENHA}
  311. # usa a mesma chave criada no editor
  312. - N8N_ENCRYPTION_KEY=3DA3144FD4965723
  313. # Configura o Host do Editor do N8N
  314. - N8N_HOST=${N8N_DOMINIO_EDITOR}.${DOMINIO_PRINCIPAL_CLIENTE}
  315. # Configura o Endereço competo do Editor
  316. - N8N_EDITOR_BASE_URL=https://${N8N_DOMINIO_EDITOR}.${DOMINIO_PRINCIPAL_CLIENTE}/
  317. # Força o uso de SSL
  318. - N8N_PROTOCOL=https
  319. # Configura o ambiente de execução
  320. - NODE_ENV=production
  321. # Configura o Endereço do Webhook
  322. - WEBHOOK_URL=https://${N8N_DOMINIO_WEBHOOK}.${DOMINIO_PRINCIPAL_CLIENTE}/
  323. # Configura o modo de execução para fila
  324. - EXECUTIONS_MODE=queue
  325. # Configura o host do Redis
  326. - QUEUE_BULL_REDIS_HOST=redis
  327. # Configura a porta do Redis
  328. - QUEUE_BULL_REDIS_PORT=6379
  329. # Configura o indice do banco de dados do Redis
  330. - QUEUE_BULL_REDIS_DB=2
  331. # Configura as bibliotecas externas que serão utilizadas
  332. - NODE_FUNCTION_ALLOW_BUILTIN=*
  333. - NODE_FUNCTION_ALLOW_EXTERNAL=moment,lodash,moment-with-locales,axios,crypto
  334. # Configura a limpeza dos dados de execução
  335. - EXECUTIONS_DATA_PRUNE=true
  336. # Configura o tempo máximo de armazenamento dos dados de execução
  337. - EXECUTIONS_DATA_MAX_AGE=72 # 3 dias
  338. - N8N_PERSONALIZATION_ENABLED=true
  339. - N8N_PUSH_BACKEND=websocket
  340. - N8N_VERSION_NOTIFICATIONS_ENABLED=false
  341. - EXECUTIONS_TIMEOUT=3600
  342. - N8N_WORKFLOW_TAGS_DISABLED=false
  343. - N8N_HIDE_USAGE_PAGE=true
  344. - N8N_BLOCK_FILE_ACCESS_TO_N8N_FILES=false
  345. # Configura o Modo de Deploy da Aplicação
  346. deploy:
  347. # O editor será executado no modo de replicação
  348. mode: replicated
  349. # Vamos ter apenas uma instância do editor
  350. replicas: 1
  351. # Configura o local de execução
  352. placement:
  353. # Você pode rodar o Editor no Manager mesmo pois usa poucos recursos
  354. constraints:
  355. - node.role == manager
  356. # - node.hostname == dsantana-manager1
  357. # - node.labels.app == webhooks # nome do label: app, valor do label: webhooks
  358. resources:
  359. # Definição dos Limites de Recursos deste Serviço
  360. limits:
  361. # Define a quantidade de CPU para o CodeChat para evitar travamento do Host
  362. cpus: "1"
  363. # Define a quantidade de RAM para o CodeChat para evitar travamento do Host
  364. memory: 1024M
  365.  
  366. networks:
  367. network_public:
  368. name: network_public
  369. external: true
  370.  
  371.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement