docker-compose.yml 2.7 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162
  1. version: "3.3"
  2. networks:
  3. public:
  4. external: true
  5. volumes:
  6. assets:
  7. driver_opts:
  8. type: "nfs"
  9. o: "addr=${NFS_IP},nolock,soft,rw"
  10. device: ":/mnt/storage/compagnia/pdf-generator/assets"
  11. services:
  12. api:
  13. image: registry.cosmobile.dev/pdf-generator:beta
  14. volumes:
  15. - "assets:/app/assets"
  16. networks:
  17. - public
  18. environment:
  19. API_DOMAIN: ${API_DOMAIN}
  20. deploy:
  21. placement:
  22. constraints:
  23. - node.role == worker
  24. - node.labels.cosmobile.scope == services
  25. labels:
  26. - "traefik.enable=true"
  27. - "traefik.docker.network=public"
  28. - "traefik.http.routers.pdf-generator-api-prod-http.rule=Host(`pdf-generator.services.cosmobile.net`)"
  29. - "traefik.http.routers.pdf-generator-api-prod-http.entrypoints=http"
  30. - "traefik.http.routers.pdf-generator-api-prod-http.middlewares=https-redirect"
  31. - "traefik.http.routers.pdf-generator-api-prod-https.rule=Host(`pdf-generator.services.cosmobile.net`)"
  32. - "traefik.http.routers.pdf-generator-api-prod-https.entrypoints=https"
  33. - "traefik.http.routers.pdf-generator-api-prod-https.tls.certresolver=le"
  34. - "traefik.http.routers.pdf-generator-api-prod-https.middlewares=compressed@file"
  35. - "traefik.http.routers.pdf-generator-api-prod-https.tls.options=min12@file"
  36. - "traefik.http.services.pdf-generator-api-prod.loadbalancer.server.port=3001"
  37. frontend:
  38. image: registry.cosmobile.dev/pdf-generator-fe:beta
  39. networks:
  40. - public
  41. environment:
  42. API_URL: ${API_URL}
  43. deploy:
  44. placement:
  45. constraints:
  46. - node.role == worker
  47. - node.labels.cosmobile.scope == services
  48. labels:
  49. - "traefik.enable=true"
  50. - "traefik.docker.network=public"
  51. - "traefik.http.routers.pdf-generator-fe-prod-http.rule=Host(`pdf-generator-fe.services.cosmobile.net`)"
  52. - "traefik.http.routers.pdf-generator-fe-prod-http.entrypoints=http"
  53. - "traefik.http.routers.pdf-generator-fe-prod-http.middlewares=https-redirect"
  54. - "traefik.http.routers.pdf-generator-fe-prod-https.rule=Host(`pdf-generator-fe.services.cosmobile.net`)"
  55. - "traefik.http.routers.pdf-generator-fe-prod-https.entrypoints=https"
  56. - "traefik.http.routers.pdf-generator-fe-prod-https.tls.certresolver=le"
  57. - "traefik.http.routers.pdf-generator-fe-prod-https.middlewares=compressed@file"
  58. - "traefik.http.routers.pdf-generator-fe-prod-https.tls.options=min12@file"
  59. - "traefik.http.services.pdf-generator-fe-prod.loadbalancer.server.port=80"