docker-compose.yml 1.7 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768
  1. version: "3.7"
  2. services:
  3. zitap-django:
  4. container_name: zitap-django
  5. build: .
  6. restart: on-failure
  7. environment:
  8. DJANGO_SECRET_KEY: <SECRET-KEY>
  9. DJANGO_DEBUG: "False"
  10. DJANGO_ALLOWED_HOSTS: <IP>,zitap.example.com,localhost
  11. DJANGO_CSRF_TRUSTED_ORIGINS: https://zitap.example.com
  12. DATABASE_ENGINE: django.db.backends.mysql
  13. DATABASE_NAME: <DATABASE-NAME>
  14. DATABASE_USERNAME: <USERNAME>
  15. DATABASE_PASSWORD: <PASSWORD>
  16. DATABASE_HOST: <IP-ADDRESS>
  17. DATABASE_PORT: 3306
  18. DATABASE_OPTIONS: "{\"init_command\": \"SET sql_mode='STRICT_TRANS_TABLES'\"}"
  19. volumes:
  20. - ./project:/app/project
  21. - ./zitap:/app/zitap
  22. - ./static:/static
  23. networks:
  24. - mysql
  25. - proxy
  26. labels:
  27. - 'traefik.enable=true'
  28. - 'traefik.http.routers.zitap.rule=Host(`zitap.example.com`)'
  29. - 'traefik.http.routers.zitap.tls=true'
  30. - 'traefik.http.routers.zitap.service=zitap'
  31. - 'traefik.http.services.zitap.loadbalancer.server.port=8000'
  32. zitap-static:
  33. container_name: zitap-static
  34. image: nginx
  35. restart: unless-stopped
  36. volumes:
  37. - ./nginx.conf:/etc/nginx/conf.d/default.conf
  38. - ./static:/etc/nginx/html/static
  39. networks:
  40. - proxy
  41. depends_on:
  42. - zitap-django
  43. labels:
  44. - 'traefik.enable=true'
  45. - 'traefik.http.routers.zitap-static.rule=Host(`zitap.example.com`) && PathPrefix(`/static/`)'
  46. - 'traefik.http.routers.zitap-static.tls=true'
  47. - 'traefik.http.routers.zitap-static.service=zitap-static'
  48. - 'traefik.http.services.zitap-static.loadbalancer.server.port=8000'
  49. networks:
  50. mysql:
  51. external: True
  52. proxy:
  53. external: True