CasaOS / ZimaOS MariaDB + NextCloud... en galère comme toujours ^^

  • Vague de SPAM

    Suite à une vague de spam sur le forum, les inscriptions sont temporairement limitées.

    Après votre inscription, un membre de l'équipe devra valider votre compte avant qu'il ne soit activé. Nous sommes désolés pour la gêne occasionnée et vous remercions de votre patience.

Machin-Truc

Apprenti
14 Septembre 2025
69
5
8
120
Bonjour à toutes et à tous ! :)

Cela fait un moment que je ne trouvais pas le temps de passer à Nextcloud et là, hop hop hop c'est parti !! :cool:
Et je commence par... me planter... :poop:

Afin de faciliter la compréhension vu que ce n'est pas le plus commun, chez moi ZimaOS est installé sur un SSD, tandis que tous le stockage est géré par une carte LSI type Megaraid en RAID 6.
Donc ZimaOS ne voit qu'un volume, et non un RAID.

ZimaOS RAID6.png

Rien de bien méchant me direz-vous, mais cela peut modifier des réglages dans les paramètres des applis. ;)

Avant NextCloud, jai installé MariaDB.

La première fois, j'ai pointé le volume vers le RAID = Impossible d'ouvrir MariaDB une fois installé. o_O
La seconde fois, pensant un problème de volume, je l'ai laissé par défaut sur le Volume ZimaOS/AppData/mariaDB = Impossible d'ouvrir MariaDB.:eek:

Vous me direz : Mais pourquoi ne pas se servir de NextCloud en SQlite sans passer par MariaDB ? Bah... bonne question... Sur ce que j'ai pu lire, ce fonctionnement n'est pas très stable dans le temps et se destine à du développement. Donc.. MariaDB pour avoir 4 à 6 utilisateurs (à terme car pour le moment, je vais déjà tenter de créer mon compte).

Bref... Une fois encore, je vous appelle au secours :ninja: et me ravi à l'avance de ma prochaine migraine o_O et, en passant, d'apprendre encore quelques trucs. :geek:

Merci par avance à qui aura la patience de m'accompagner ^^
Bonne journée !
 
je vous appelle au secours
J'ai pour l'instant Nextcloud d'installé pour mes boîtes courriels et pour gérer mes liens de partage (je n'utilise plus la Sync c'est une cata). Cependant, je ne vais pas tarder à remiser cette app (avec laquelle je n'ai jamais accroché) et la remplacer par Sync-in, Cypht et Photoprism. Bon bref, ce n'est que mon avis et mon cahier des charges.
Avant NextCloud, jai installé MariaDB.
Après pas mal de tests, j'ai opté pour Postgres qui fonctionne nickel.
Dans un premier temps, de quoi as-tu besoin ? de la config du code YAML pour Casa/ZimaOS ? pour déployer l'app
NB j'ai testé les configs proposées par les différents magasins d'apps, je ne les ai pas trouvées terribles et fonctionnent moyen (et pas basées sur la dernière image).
j'ai pointé le volume vers le RAID
Sauf erreur de ma part, il te faut régler dans un premier temps l'ensemble de cette app sur AppData (dans le dossier de l'app).
Dans un second temps, tu attaches un nouveau volume de stockage (pas testé) en indiquant le chemin sur Volumes -> hdd:/mnt/external
Les afficionados de Nextcloud pourront te guider.
me ravi à l'avance de ma prochaine migraine
Sache que la mise en place de cette app est extrêmement chronophage (compte 1h / 1h30) -> configuration du YAML + réglages des alertes
Prépare les Efferalgan :ROFLMAO:
 
  • Haha
Réactions: Machin-Truc
Dans un premier temps, de quoi as-tu besoin ? de la config du code YAML pour Casa/ZimaOS ?
Alors je t'avoue qu'en te lisant, je dis oui (Au moins ça marchera ^^).

Sauf erreur de ma part, il te faut régler dans un premier temps l'ensemble de cette app sur AppData (dans le dossier de l'app).
Dans un second temps, tu attaches un nouveau volume de stockage (pas testé) en indiquant le chemin sur Volumes -> hdd:/mnt/external
Je vois. J'avais eu le même truc avec Jellyfin en créant un volume pour chaque bibliothèque sans modifier la racine d'installation.

Prépare les Efferalgan
Une palette... :ROFLMAO:

Côté config :
NextcCloud, je l'utilise pour mon travail et il fonctionne plutôt très bien dans mon cas. Il est parfaitement compatible avec les suites et applications open source que j'utilise et il permet le coworking entre collègues. En l'utilisant en perso, cela me permet de limiter les plateformes, d'assurer la disponibilité de tous mes docs de taff, de gérer plusieurs utilisateurs, et de gagner en prod tout en dégageant pas mal de services US de mon quotidien.

Il y a toujours mieux, mais Nextcloud me permettra que tout faire communiquer avec une maintenance centralisée sur une plateforme... enfin j'espère :ROFLMAO:
 
config du code YAML pour Casa/ZimaOS
Ci-après ma compo, vérifie et complète et/ou modifie au niveau

  • WebUI -> Ton NDD
  • Tes User et Password
  • Ton IP locale
  • Ton NDD
  • Tes UID GID


Code:
name: nextcloud
services:
  cron:
    cpu_shares:
    command: []
    depends_on:
      db-nextcloud:
        condition: service_healthy
        required: true
      redis-nextcloud:
        condition: service_healthy
        required: true
    deploy:
      resources:
        limits:
          memory:
        reservations: {}
    entrypoint:
      - /cron.sh
    image: nextcloud:latest
    labels:
      icon: https://cdn.jsdelivr.net/gh/selfhst/icons/png/nextcloud.png
    restart: unless-stopped
    volumes:
      - type: bind
        source: /DATA/AppData/nextcloud/html
        target: /var/www/html
        bind:
          create_host_path: true
    x-casaos:
      volumes:
        - container: /var/www/html
          description:
            en_us: "Container Path: /var/www/html"
    ports: []
    devices: []
    cap_add: []
    environment: []
    networks:
      - nextcloud_network
    privileged: false
    container_name: ""
    hostname: ""
  db-nextcloud:
    cpu_shares:
    command: []
    container_name: db-nextcloud
    deploy:
      resources:
        limits:
          memory:
        reservations: {}
    environment:
      - POSTGRES_DB=nextcloud
      - POSTGRES_PASSWORD=casaos
      - POSTGRES_USER=casaos
    hostname: db-nextcloud
    healthcheck:
      test:
        - CMD-SHELL
        - pg_isready -U casaos -d nextcloud
      timeout: 5s
      interval: 10s
      retries: 5
    image: postgres:14.2
    labels:
      icon: https://cdn.jsdelivr.net/gh/selfhst/icons/png/nextcloud.png
    restart: unless-stopped
    volumes:
      - type: bind
        source: /DATA/AppData/nextcloud/pgdata
        target: /var/lib/postgresql/data
        bind:
          create_host_path: true
    x-casaos:
      envs:
        - container: POSTGRES_PASSWORD
          description:
            en_us: Database password
        - container: POSTGRES_USER
          description:
            en_us: Database user
        - container: POSTGRES_DB
          description:
            en_us: Database type
      volumes:
        - container: /var/lib/postgresql/data
          description:
            en_us: "Container Path: /var/lib/postgresql/data"
    ports: []
    devices: []
    cap_add: []
    networks:
      - nextcloud_network
    privileged: false
  nextcloud:
    cpu_shares:
    command: []
    container_name: nextcloud
    depends_on:
      db-nextcloud:
        condition: service_healthy
        required: true
      redis-nextcloud:
        condition: service_healthy
        required: true
    deploy:
      resources:
        limits:
          memory: 128500M
        reservations: {}
    environment:
      - NEXTCLOUD_ADMIN_PASSWORD=ton-mot-de-passe
      - NEXTCLOUD_ADMIN_USER=ton-pseudo
      - NEXTCLOUD_TRUSTED_DOMAINS=ton-ndd.fr 192.168.1.x
      - OVERWRITEHOST=ton-ndd.fr
      - OVERWRITEPROTOCOL=https
      - PHP_MEMORY_LIMIT=1024M
      - PHP_UPLOAD_LIMIT=1024M
      - POSTGRES_DB=nextcloud
      - POSTGRES_HOST=db-nextcloud
      - POSTGRES_PASSWORD=casaos
      - POSTGRES_USER=casaos
      - REDIS_HOST=redis-nextcloud
      - TRUSTED_PROXIES=192.168.1.x
    hostname: nextcloud
    image: nextcloud:latest
    labels:
      icon: https://cdn.jsdelivr.net/gh/selfhst/icons/png/nextcloud.png
    ports:
      - mode: ingress
        target: 80
        published: "7580"
        protocol: tcp
    restart: unless-stopped
    volumes:
      - type: bind
        source: /DATA/AppData/nextcloud/html
        target: /var/www/html
        bind:
          create_host_path: true
      - type: bind
        source: /DATA/AppData/nextcloud/custom_apps
        target: /var/www/html/custom_apps
      - type: bind
        source: /DATA/AppData/nextcloud/config
        target: /var/www/html/config
      - type: bind
        source: /DATA/AppData/nextcloud/data
        target: /var/www/html/data
      - type: bind
        source: /DATA/AppData/nextcloud/themes
        target: /var/www/html/themes
    x-casaos:
      envs:
        - container: POSTGRES_HOST
          description:
            en_us: Database host
        - container: REDIS_HOST
          description:
            en_us: Redis host
        - container: POSTGRES_PASSWORD
          description:
            en_us: Database password
        - container: POSTGRES_USER
          description:
            en_us: Database user
        - container: POSTGRES_DB
          description:
            en_us: Database type
        - container: NEXTCLOUD_ADMIN_USER
          description:
            en_us: Nextcloud admin user
        - container: NEXTCLOUD_ADMIN_PASSWORD
          description:
            en_us: Nextcloud admin password
        - container: TRUSTED_PROXIES
          description:
            en_us: Trusted proxies
        - container: OVERWRITEPROTOCOL
          description:
            en_us: Overwrite protocol
        - container: PHP_UPLOAD_LIMIT
          description:
            en_us: PHP upload limit
      ports:
        - container: "7580"
          description:
            en_us: "Container Port: 7580"
      volumes:
        - container: /var/www/html
          description:
            en_us: "Container Path: /var/www/html"
    devices: []
    cap_add: []
    networks:
      - nextcloud_network
    privileged: false
  redis-nextcloud:
    cpu_shares:
    command: []
    container_name: redis-nextcloud
    deploy:
      resources:
        limits:
          memory:
        reservations: {}
    hostname: redis-nextcloud
    healthcheck:
      test:
        - CMD-SHELL
        - redis-cli ping || exit 1
      timeout: 5s
      interval: 10s
      retries: 5
    image: redis:latest
    labels:
      icon: https://cdn.jsdelivr.net/gh/selfhst/icons/png/nextcloud.png
    restart: unless-stopped
    user: 1000:1000
    volumes:
      - type: bind
        source: /DATA/AppData/nextcloud/redis
        target: /data
        bind:
          create_host_path: true
    x-casaos:
      ports:
        - container: "6379"
          description:
            en_us: "Container Port: 6379"
      volumes:
        - container: /data
          description:
            en_us: "Container Path: /data"
    ports: []
    devices: []
    cap_add: []
    environment: []
    networks:
      - nextcloud_network
    privileged: false
networks:
  nextcloud_network:
    name: nextcloud_nextcloud_network
    driver: bridge
x-casaos:
  author: self
  category: self
  hostname: ton-ndd.fr
  icon: https://cdn.jsdelivr.net/gh/selfhst/icons/png/nextcloud.png
  index: /
  is_uncontrolled: false
  port_map: "443"
  scheme: https
  store_app_id: nextcloud
  title:
    custom: NEXTCLOUD
    en_us: Nextcloud

Concernant les réglages des alertes, j'en ai trouvé une partie récap chez Belginux

Pour celles non répertoriées (je ne sais plus lesquelles) le complément sur le site de Nextcloud