Nextcloud AIO auf Synology Docker

nobody23

Benutzer
Mitglied seit
23. Mai 2010
Beiträge
132
Punkte für Reaktionen
2
Punkte
18
Hallo zusammen

Bin auf folgende Anleitung gestossen:
https://www.youtube.com/watch?v=1noeu9RMI2o
https://github.com/AmIBeingObtuse/Youtubestacks/blob/main/Nextcloud All In One

Wie kann ich nun die AIO auf Synology Docker ummünzen?

Hab unterdessen versucht die YAML zu importieren, was nicht wirklich funktioniert...

YAML:
services:
  nextcloud-aio-mastercontainer:
    image: nextcloud/all-in-one:latest
    init: true
    restart: always
    container_name: nextcloud-aio-mastercontainer # This line is not allowed to be changed as otherwise AIO will not work correctly
    volumes:
      - nextcloud_aio_mastercontainer:/mnt/docker-aio-config # This line is not allowed to be changed as otherwise the built-in backup solution will not work
      - /volume3/docker/docker.sock:/var/run/docker.sock:ro # May be changed on macOS, Windows or docker rootless. See the applicable documentation. If adjusting, don't forget to also set 'WATCHTOWER_DOCKER_SOCKET_PATH'!
    ports:
      - 9080:80 # Can be removed when running behind a web server or reverse proxy (like Apache, Nginx, Cloudflare Tunnel and else). See https://github.com/nextcloud/all-in-one/blob/main/reverse-proxy.md
      - 8080:8080
      - 8443:8443 # Can be removed when running behind a web server or reverse proxy (like Apache, Nginx, Cloudflare Tunnel and else). See https://github.com/nextcloud/all-in-one/blob/main/reverse-proxy.md
    environment: # Is needed when using any of the options below
      # AIO_DISABLE_BACKUP_SECTION: false # Setting this to true allows to hide the backup section in the AIO interface. See https://github.com/nextcloud/all-in-one#how-to-disable-the-backup-section
      # APACHE_PORT: 11000 # Is needed when running behind a web server or reverse proxy (like Apache, Nginx, Cloudflare Tunnel and else). See https://github.com/nextcloud/all-in-one/blob/main/reverse-proxy.md
      # APACHE_IP_BINDING: 127.0.0.1 # Should be set when running behind a web server or reverse proxy (like Apache, Nginx, Cloudflare Tunnel and else) that is running on the same host. See https://github.com/nextcloud/all-in-one/blob/main/reverse-proxy.md
      # BORG_RETENTION_POLICY: --keep-within=7d --keep-weekly=4 --keep-monthly=6 # Allows to adjust borgs retention policy. See https://github.com/nextcloud/all-in-one#how-to-adjust-borgs-retention-policy
      # COLLABORA_SECCOMP_DISABLED: false # Setting this to true allows to disable Collabora's Seccomp feature. See https://github.com/nextcloud/all-in-one#how-to-disable-collaboras-seccomp-feature
      # NEXTCLOUD_DATADIR: /mnt/ncdata # Allows to set the host directory for Nextcloud's datadir. ⚠️⚠️⚠️ Warning: do not set or adjust this value after the initial Nextcloud installation is done! See https://github.com/nextcloud/all-in-one#how-to-change-the-default-location-of-nextclouds-datadir
      # NEXTCLOUD_MOUNT: /mnt/ # Allows the Nextcloud container to access the chosen directory on the host. See https://github.com/nextcloud/all-in-one#how-to-allow-the-nextcloud-container-to-access-directories-on-the-host
      NEXTCLOUD_UPLOAD_LIMIT: 256G # Can be adjusted if you need more. See https://github.com/nextcloud/all-in-one#how-to-adjust-the-upload-limit-for-nextcloud
      # NEXTCLOUD_MAX_TIME: 3600 # Can be adjusted if you need more. See https://github.com/nextcloud/all-in-one#how-to-adjust-the-max-execution-time-for-nextcloud
      # NEXTCLOUD_MEMORY_LIMIT: 512M # Can be adjusted if you need more. See https://github.com/nextcloud/all-in-one#how-to-adjust-the-php-memory-limit-for-nextcloud
      # NEXTCLOUD_TRUSTED_CACERTS_DIR: /path/to/my/cacerts # CA certificates in this directory will be trusted by the OS of the nexcloud container (Useful e.g. for LDAPS) See See https://github.com/nextcloud/all-in-one#how-to-trust-user-defined-certification-authorities-ca
      # NEXTCLOUD_STARTUP_APPS: deck twofactor_totp tasks calendar contacts notes # Allows to modify the Nextcloud apps that are installed on starting AIO the first time. See https://github.com/nextcloud/all-in-one#how-to-change-the-nextcloud-apps-that-are-installed-on-the-first-startup
      # NEXTCLOUD_ADDITIONAL_APKS: imagemagick # This allows to add additional packages to the Nextcloud container permanently. Default is imagemagick but can be overwritten by modifying this value. See https://github.com/nextcloud/all-in-one#how-to-add-os-packages-permanently-to-the-nextcloud-container
      # NEXTCLOUD_ADDITIONAL_PHP_EXTENSIONS: imagick # This allows to add additional php extensions to the Nextcloud container permanently. Default is imagick but can be overwritten by modifying this value. See https://github.com/nextcloud/all-in-one#how-to-add-php-extensions-permanently-to-the-nextcloud-container
      # NEXTCLOUD_ENABLE_DRI_DEVICE: true # This allows to enable the /dev/dri device in the Nextcloud container. ⚠️⚠️⚠️ Warning: this only works if the '/dev/dri' device is present on the host! If it should not exist on your host, don't set this to true as otherwise the Nextcloud container will fail to start! See https://github.com/nextcloud/all-in-one#how-to-enable-hardware-transcoding-for-nextcloud
      NEXTCLOUD_KEEP_DISABLED_APPS: false # Setting this to true will keep Nextcloud apps that are disabled in the AIO interface and not uninstall them if they should be installed. See https://github.com/nextcloud/all-in-one#how-to-keep-disabled-apps
      # TALK_PORT: 3478 # This allows to adjust the port that the talk container is using. See https://github.com/nextcloud/all-in-one#how-to-adjust-the-talk-port
      # WATCHTOWER_DOCKER_SOCKET_PATH: /var/run/docker.sock # Needs to be specified if the docker socket on the host is not located in the default '/var/run/docker.sock'. Otherwise mastercontainer updates will fail. For macos it needs to be '/var/run/docker.sock'
    # networks: # Is needed when you want to create the nextcloud-aio network with ipv6-support using this file, see the network config at the bottom of the file
      # - nextcloud-aio # Is needed when you want to create the nextcloud-aio network with ipv6-support using this file, see the network config at the bottom of the file
    # security_opt: ["label:disable"] # Is needed when using SELinux

  # # Optional: Caddy reverse proxy. See https://github.com/nextcloud/all-in-one/blob/main/reverse-proxy.md
  # # You can find further examples here: https://github.com/nextcloud/all-in-one/discussions/588
  # caddy:
  #   image: caddy:alpine
  #   restart: always
  #   container_name: caddy
  #   volumes:
  #     - ./Caddyfile:/etc/caddy/Caddyfile
  #     - ./certs:/certs
  #     - ./config:/config
  #     - ./data:/data
  #     - ./sites:/srv
  #   network_mode: "host"

volumes: # If you want to store the data on a different drive, see https://github.com/nextcloud/all-in-one#how-to-store-the-filesinstallation-on-a-separate-drive
  nextcloud_aio_mastercontainer:
    name: nextcloud_aio_mastercontainer # This line is not allowed to be changed as otherwise the built-in backup solution will not work

# # Optional: If you need ipv6, follow step 1 and 2 of https://github.com/nextcloud/all-in-one/blob/main/docker-ipv6-support.md first and then uncomment the below config in order to activate ipv6 for the internal nextcloud-aio network.
# # Please make sure to uncomment also the networking lines of the mastercontainer above in order to actually create the network with docker-compose
# networks:
#   nextcloud-aio:
#     name: nextcloud-aio # This line is not allowed to be changed as otherwise the created network will not be used by the other containers of AIO
#     driver: bridge
#     enable_ipv6: true
#     ipam:
#       driver: default
#       config:
#         - subnet: fd12:3456:789a:2::/64 # IPv6 subnet to use

Resultat:

1714576032769.png
 

*kw*

Benutzer
Sehr erfahren
Maintainer
Mitglied seit
10. Aug 2013
Beiträge
2.842
Punkte für Reaktionen
1.382
Punkte
174

nobody23

Benutzer
Mitglied seit
23. Mai 2010
Beiträge
132
Punkte für Reaktionen
2
Punkte
18
Danke, aber bevorzuge das ganze auf Docker laufen zu lassen.
Habe das schoneinmal so gemacht, doch leider scheint momentan das GUI/Docker auf der DSM 7.2 einen Fehler/Bug zu haben.
Wenn ich den Link von phpMyAdmin auf mariadb machen will, so muss man als Alias 'db' verwenden, doch ausgerechnet das lässt Docker nicht zu!

Daher die AIO Lösung...

Ursprüngliche Lösung:
https://www.youtube.com/watch?v=a74C9X63yo4
 

nobody23

Benutzer
Mitglied seit
23. Mai 2010
Beiträge
132
Punkte für Reaktionen
2
Punkte
18
Spielst du auf 'WATCHTOWER_DOCKER_SOCKET_PATH' an?
 
Zuletzt bearbeitet von einem Moderator:

*kw*

Benutzer
Sehr erfahren
Maintainer
Mitglied seit
10. Aug 2013
Beiträge
2.842
Punkte für Reaktionen
1.382
Punkte
174

nobody23

Benutzer
Mitglied seit
23. Mai 2010
Beiträge
132
Punkte für Reaktionen
2
Punkte
18
Wo sollte die docker.sock überhaupt liegen? Hab mehrere DS volumes...
 

nobody23

Benutzer
Mitglied seit
23. Mai 2010
Beiträge
132
Punkte für Reaktionen
2
Punkte
18

Kenne marius hosting und die Anleitung (YT) haben dazu geführt, dass ich das schoneinmal komplett 'manuell' installiert hatte.
Leider funktioniert dieser Weg momentan nicht, vermutlich aufgrund eines Bugs...
 

alexhell

Benutzer
Sehr erfahren
Mitglied seit
13. Mai 2021
Beiträge
2.831
Punkte für Reaktionen
854
Punkte
154
Welcher Bug soll das sein? Was genau hast du probiert? Geht es dir um den docker.sock?
 

nobody23

Benutzer
Mitglied seit
23. Mai 2010
Beiträge
132
Punkte für Reaktionen
2
Punkte
18
Es sind zwei Sachen, hier einmal um die AIO Lösung und docker.sock.
Die andere Sache ist, wenn ich momentan versuche, Nextcloud mit MariaDB einzeln 'manuell' zu installieren wo ich auf meinen 'Bug' stosse.
(Verlinkung von phpmyadmin mit mariadb welche nicht funktioniert)
 

alexhell

Benutzer
Sehr erfahren
Mitglied seit
13. Mai 2021
Beiträge
2.831
Punkte für Reaktionen
854
Punkte
154
Ich weiß nicht was du mit der Verlinkung meinst. Zeig mal ein Beispiel. YouTube ist für mich kein Beispiel, weil ich will mir keine Videos angucken.
- /volume3/docker/docker.sock:/var/run/docker.sock:ro
Wie kommst du darauf, dass die docker.sock da liegt?
Probier mal /var/run/docker.sock
 

nobody23

Benutzer
Mitglied seit
23. Mai 2010
Beiträge
132
Punkte für Reaktionen
2
Punkte
18
https://github.com/nextcloud/all-in-one/blob/main/compose.yaml
https://github.com/nextcloud/all-in-one?tab=readme-ov-file#how-to-run-aio-on-synology-dsm

On Synology, there are two things different in comparison to Linux: instead of using --volume /var/run/docker.sock:/var/run/docker.sock:ro, you need to use --volume /volume1/docker/docker.sock:/var/run/docker.sock:ro to run it. You also need to add --env WATCHTOWER_DOCKER_SOCKET_PATH="/volume1/docker/docker.sock" to the docker run command of the mastercontainer (but before the last line nextcloud/all-in-one:latest). Apart from that it should work and behave the same like on Linux. Obviously the Synology Docker GUI will not work with that so you will need to either use SSH or create a user-defined script task in the task scheduler as the user 'root' in order to run the command.

Darum komm ich da drauf.
 

nobody23

Benutzer
Mitglied seit
23. Mai 2010
Beiträge
132
Punkte für Reaktionen
2
Punkte
18
Mit Verlinkung meinte ich:
1714583568098.png

Nur bleibt eine solche Verlinkung beim mir nicht bestehen...
(Das hat nun nix mit der AIO Lösung zu tun)
 

alexhell

Benutzer
Sehr erfahren
Mitglied seit
13. Mai 2021
Beiträge
2.831
Punkte für Reaktionen
854
Punkte
154
Die GUI kann halt nur ab /volumeX was auswählen. Wenn du es über Docker Compose machst, dann musst du sowas nicht anpassen. Das ist halt, weil der Container Manager einfach nur schlecht ist.
 

alexhell

Benutzer
Sehr erfahren
Mitglied seit
13. Mai 2021
Beiträge
2.831
Punkte für Reaktionen
854
Punkte
154
Ich würde es gar nicht über die GUI probieren. Das macht es nur komplizierter.
 


 

Kaffeautomat

Wenn du das Forum hilfreich findest oder uns unterstützen möchtest, dann gib uns doch einfach einen Kaffee aus.

Als Dankeschön schalten wir deinen Account werbefrei.

:coffee:

Hier gehts zum Kaffeeautomat