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.

75 lines
1.6 KiB

  1. version: '3'
  2. networks:
  3. nginx-proxy:
  4. external: true
  5. backend-nextcloud:
  6. external: true
  7. services:
  8. db:
  9. image: mariadb
  10. command: --transaction-isolation=READ-COMMITTED --binlog-format=ROW
  11. restart: always
  12. volumes:
  13. - /opt/docker/nextcloud/mariadb:/var/lib/mysql
  14. env_file:
  15. - db.env
  16. container_name: nextcloud-db
  17. networks:
  18. - backend-nextcloud
  19. redis:
  20. image: redis:alpine
  21. container_name: nextcloud-redis
  22. command: redis-server --requirepass ${REDIS_HOST_PASSWORD}
  23. networks:
  24. - backend-nextcloud
  25. restart: always
  26. app:
  27. image: nextcloud:20.0.0-fpm-alpine
  28. restart: always
  29. volumes:
  30. - /opt/docker/nextcloud/app:/var/www/html
  31. - /mnt/storage-box/data-nextcloud:/var/www/html/data
  32. environment:
  33. - MYSQL_HOST=db
  34. - REDIS_HOST=redis
  35. - REDIS_HOST_PASSWORD=${REDIS_HOST_PASSWORD}
  36. env_file:
  37. - db.env
  38. networks:
  39. - backend-nextcloud
  40. depends_on:
  41. - db
  42. - redis
  43. container_name: nextcloud
  44. web:
  45. image: nginx:1.20-alpine
  46. restart: always
  47. volumes:
  48. - /opt/docker/nextcloud/app:/var/www/html:ro
  49. - ./nginx.conf:/etc/nginx/nginx.conf:ro
  50. depends_on:
  51. - app
  52. networks:
  53. - nginx-proxy
  54. - backend-nextcloud
  55. container_name: nextcloud-nginx
  56. cron:
  57. image: nextcloud:20.0.0-fpm-alpine
  58. restart: always
  59. volumes:
  60. - /opt/docker/nextcloud/app:/var/www/html
  61. - /mnt/storage-box/data-nextcloud:/var/www/html/data
  62. entrypoint: /cron.sh
  63. depends_on:
  64. - db
  65. - redis
  66. container_name: nextcloud-cron
  67. networks:
  68. - backend-nextcloud