docker-compose.yml 3.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115
  1. version: '3'
  2. services:
  3. db:
  4. image: "postgres:alpine"
  5. restart: always
  6. ports:
  7. - "54320:5432"
  8. volumes:
  9. - ./db-data:/var/lib/postgresql/data
  10. - ./db-backup:/docker-entrypoint-initdb.d
  11. environment:
  12. POSTGRES_PASSWORD: ${POSTGRES_PASSWORD}
  13. networks:
  14. - botpronet
  15. redis:
  16. image: "redis:alpine"
  17. networks:
  18. - botpronet
  19. backend:
  20. volumes:
  21. - web-migrations:/opt/web2py/applications/backend/databases/
  22. depends_on:
  23. - "db"
  24. - "redis"
  25. environment:
  26. settings_chatcenter_scaled_notification: "${settings_chatcenter_scaled_notification}"
  27. settings_backend_url: "${SETTINGS_BACKEND_URL}"
  28. settings_messenger_default_api: "${settings_messenger_default_api}"
  29. smtp_server: "${smtp_server}"
  30. smtp_sender: "${smtp_sender}"
  31. smtp_login: "${smtp_login}"
  32. setup_done: "false"
  33. setup_admin_email: "${setup_admin_email}"
  34. setup_admin_password: "${setup_admin_password}"
  35. db_uri: "postgres://postgres:${POSTGRES_PASSWORD}@db/postgres"
  36. WEB2PY_PASSWORD: "${setup_admin_password}"
  37. WEB2PY_ADMIN_SECURITY_BYPASS: "true"
  38. db_migrate: "true"
  39. settings_cors_allowed: '["${FRONTEND_URL}", "http://localhost:9000"]'
  40. UWSGI_OPTIONS: '-M -T -i -p 4 -t 60'
  41. image: "hub.botprotec.com/botpro/botpro-backend:${VERSION_TAG}"
  42. command: uwsgi
  43. ports:
  44. - "${WEB_PORT}:9090"
  45. networks:
  46. - botpronet
  47. web2py-rq-worker:
  48. depends_on:
  49. - "db"
  50. - "redis"
  51. - "backend"
  52. environment:
  53. settings_chatcenter_scaled_notification: "${settings_chatcenter_scaled_notification}"
  54. settings_backend_url: "${SETTINGS_BACKEND_URL}"
  55. settings_messenger_default_api: "${settings_messenger_default_api}"
  56. smtp_server: "${smtp_server}"
  57. smtp_sender: "${smtp_sender}"
  58. smtp_login: "${smtp_login}"
  59. setup_done: "true"
  60. db_uri: "postgres://postgres:${POSTGRES_PASSWORD}@db/postgres"
  61. db_migrate: "false"
  62. redis_host: "redis"
  63. redis_port: "6379"
  64. redis_password: ""
  65. image: "hub.botprotec.com/botpro/botpro-backend-rq-worker:${VERSION_TAG}"
  66. networks:
  67. - botpronet
  68. restart: unless-stopped
  69. web2py-rq-worker-low:
  70. depends_on:
  71. - "db"
  72. - "redis"
  73. - "backend"
  74. environment:
  75. settings_chatcenter_scaled_notification: "${settings_chatcenter_scaled_notification}"
  76. settings_backend_url: "${SETTINGS_BACKEND_URL}"
  77. settings_messenger_default_api: "${settings_messenger_default_api}"
  78. smtp_server: "${smtp_server}"
  79. smtp_sender: "${smtp_sender}"
  80. smtp_login: "${smtp_login}"
  81. setup_done: "true"
  82. db_uri: "postgres://postgres:${POSTGRES_PASSWORD}@db/postgres"
  83. db_migrate: "false"
  84. redis_queue: "low"
  85. redis_host: "redis"
  86. redis_port: "6379"
  87. redis_password: ""
  88. image: "hub.botprotec.com/botpro/botpro-backend-rq-worker:${VERSION_TAG}"
  89. networks:
  90. - botpronet
  91. restart: unless-stopped
  92. web2py-worker:
  93. depends_on:
  94. - "db"
  95. - "redis"
  96. - "backend"
  97. environment:
  98. settings_chatcenter_scaled_notification: "${settings_chatcenter_scaled_notification}"
  99. settings_backend_url: "${SETTINGS_BACKEND_URL}"
  100. settings_messenger_default_api: "${settings_messenger_default_api}"
  101. smtp_server: "${smtp_server}"
  102. smtp_sender: "${smtp_sender}"
  103. smtp_login: "${smtp_login}"
  104. db_uri: "postgres://postgres:${POSTGRES_PASSWORD}@db/postgres"
  105. db_migrate: "false"
  106. image: "hub.botprotec.com/botpro/botpro-backend-w2p-worker:${VERSION_TAG}"
  107. networks:
  108. - botpronet
  109. restart: unless-stopped
  110. volumes:
  111. web-migrations:
  112. db-data:
  113. networks:
  114. botpronet: