Skip to main content

Mettre en place Nextcloud Docker

 

Il existe plusieurs manière de mettre en place Nextcloud Docker. Dans notre cas nous allons utiliser une base de données Postgres déjà déployé avec Docker (Voir déploiement Postgres).

 


Pour accéder à notre base de données externe, nous devons importer le "network" lié à la base de donnée (dans notre cas le network est bddnetwork.  
De plus dans la variable d'environnement POSTGRES_HOST doit 

Fichier docker-compose : 

services:

  nextcloud:
    image: ${NEXTCLOUD_IMAGE_TAG}
    container_name: nextcloud
    networks:
      - bddnetwork
    ports: 
      - 8082:80
    volumes:
      - /path/to/data/nextcloud:/var/www/html    
      - /path/to/conf/nextcloud/config:/var/www/html/config
    restart: unless-stopped
    environment:
      TZ: ${NEXTCLOUD_TIMEZONE}
      POSTGRES_HOST: postgres
      DB_PORT: 5432
      POSTGRES_DB: ${NEXTCLOUD_DB_NAME}
      POSTGRES_USER: ${NEXTCLOUD_DB_USER}
      POSTGRES_PASSWORD: ${NEXTCLOUD_DB_PASSWORD}
      REDIS_HOST: redis-nextcloud
      REDIS_HOST_PORT: 6379
      REDIS_HOST_PASSWORD: ${NEXTCLOUD_REDIS_PASSWORD}      
#      TRUSTED_PROXIES: ${NEXTCLOUD_HOSTNAME}
      OVERWRITECLIURL: ${NEXTCLOUD_URL}
      OVERWRITEPROTOCOL: https
      OVERWRITEHOST: ${NEXTCLOUD_HOSTNAME}
#      PHP_MEMORY_LIMIT: 2048M			# If you want to overwritte Php Memory Limit 
#      PHP_UPLOAD_LIMIT: 2048M			# If you want to overwritte Php Upload Limit

  redis-nextcloud:
    image: ${NEXTCLOUD_REDIS_IMAGE_TAG}
    command: ["redis-server", "--requirepass", "$NEXTCLOUD_REDIS_PASSWORD"]
    volumes:
      - /path/to/data/redis-nextcloud:/data
    networks:
      - bddnetwork
    healthcheck:
      test: ["CMD", "redis-cli", "ping"]
      interval: 10s
      timeout: 5s
      retries: 3
      start_period: 60s
    restart: unless-stopped

volumes:
 nextcloud:
 redis-nextcloud:

networks:
  bddnetwork:
    external: true