You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

174 lines
3.9 KiB

  1. version: "2.4"
  2. services:
  3. odoo_proxy:
  4. image: ghcr.io/tecnativa/docker-whitelist:latest
  5. depends_on:
  6. - odoo
  7. networks: &public
  8. default:
  9. public:
  10. ports:
  11. - "127.0.0.1:14899:6899"
  12. - "127.0.0.1:14069:8069"
  13. environment:
  14. PORT: "6899 8069"
  15. TARGET: odoo
  16. odoo:
  17. extends:
  18. file: common.yaml
  19. service: odoo
  20. build:
  21. args:
  22. # To aggregate in development, use `setup-devel.yaml`
  23. AGGREGATE: "false"
  24. # Export these variables to own files created by odoo in your filesystem
  25. UID: "${UID:-1000}"
  26. GID: "${GID:-1000}"
  27. # No need for this in development
  28. PIP_INSTALL_ODOO: "false"
  29. CLEAN: "false"
  30. COMPILE: "false"
  31. environment:
  32. DOODBA_ENVIRONMENT: "${DOODBA_ENVIRONMENT-devel}"
  33. LIST_DB: "true"
  34. DEBUGPY_ENABLE: "${DOODBA_DEBUGPY_ENABLE:-0}"
  35. PGDATABASE: &dbname devel
  36. PYTHONDONTWRITEBYTECODE: 1
  37. PYTHONOPTIMIZE: ""
  38. PYTHONPATH: /opt/odoo/custom/src/odoo
  39. SMTP_PORT: "1025"
  40. WDB_WEB_PORT: "14984"
  41. # To avoid installing demo data export DOODBA_WITHOUT_DEMO=all
  42. WITHOUT_DEMO: "${DOODBA_WITHOUT_DEMO-false}"
  43. volumes:
  44. - ./odoo/custom:/opt/odoo/custom:ro,z
  45. - ./odoo/auto:/opt/odoo/auto:rw,z
  46. depends_on:
  47. - db
  48. - proxy_cdnjs_cloudflare_com
  49. - proxy_fonts_googleapis_com
  50. - proxy_fonts_gstatic_com
  51. - proxy_www_google_com
  52. - proxy_www_googleapis_com
  53. - proxy_www_gravatar_com
  54. - smtp
  55. - wdb
  56. command:
  57. - odoo
  58. - --limit-memory-soft=0
  59. - --limit-time-real-cron=9999999
  60. - --limit-time-real=9999999
  61. - --workers=0
  62. - --dev=reload,qweb,werkzeug,xml
  63. db:
  64. extends:
  65. file: common.yaml
  66. service: db
  67. environment:
  68. POSTGRES_DB: *dbname
  69. POSTGRES_PASSWORD: odoopassword
  70. pgweb:
  71. image: docker.io/sosedoff/pgweb
  72. networks: *public
  73. ports:
  74. - "127.0.0.1:14081:8081"
  75. environment:
  76. DATABASE_URL: postgres://odoo:odoopassword@db:5432/devel?sslmode=disable
  77. depends_on:
  78. - db
  79. smtp:
  80. extends:
  81. file: common.yaml
  82. service: smtpfake
  83. networks: *public
  84. ports:
  85. - "127.0.0.1:14025:8025"
  86. wdb:
  87. image: docker.io/kozea/wdb
  88. networks: *public
  89. ports:
  90. - "127.0.0.1:14984:1984"
  91. # HACK https://github.com/Kozea/wdb/issues/136
  92. init: true
  93. # Whitelist outgoing traffic for tests, reports, etc.
  94. proxy_cdnjs_cloudflare_com:
  95. image: ghcr.io/tecnativa/docker-whitelist:latest
  96. networks:
  97. default:
  98. aliases:
  99. - cdnjs.cloudflare.com
  100. public:
  101. environment:
  102. TARGET: cdnjs.cloudflare.com
  103. PRE_RESOLVE: 1
  104. proxy_fonts_googleapis_com:
  105. image: ghcr.io/tecnativa/docker-whitelist:latest
  106. networks:
  107. default:
  108. aliases:
  109. - fonts.googleapis.com
  110. public:
  111. environment:
  112. TARGET: fonts.googleapis.com
  113. PRE_RESOLVE: 1
  114. proxy_fonts_gstatic_com:
  115. image: ghcr.io/tecnativa/docker-whitelist:latest
  116. networks:
  117. default:
  118. aliases:
  119. - fonts.gstatic.com
  120. public:
  121. environment:
  122. TARGET: fonts.gstatic.com
  123. PRE_RESOLVE: 1
  124. proxy_www_google_com:
  125. image: ghcr.io/tecnativa/docker-whitelist:latest
  126. networks:
  127. default:
  128. aliases:
  129. - www.google.com
  130. public:
  131. environment:
  132. TARGET: www.google.com
  133. PRE_RESOLVE: 1
  134. proxy_www_googleapis_com:
  135. image: ghcr.io/tecnativa/docker-whitelist:latest
  136. networks:
  137. default:
  138. aliases:
  139. - www.googleapis.com
  140. public:
  141. environment:
  142. TARGET: www.googleapis.com
  143. PRE_RESOLVE: 1
  144. proxy_www_gravatar_com:
  145. image: ghcr.io/tecnativa/docker-whitelist:latest
  146. networks:
  147. default:
  148. aliases:
  149. - www.gravatar.com
  150. public:
  151. environment:
  152. TARGET: www.gravatar.com
  153. PRE_RESOLVE: 1
  154. networks:
  155. default:
  156. internal: ${DOODBA_NETWORK_INTERNAL-true}
  157. public:
  158. volumes:
  159. filestore:
  160. db: