Outils pour utilisateurs

Outils du site


opencloud

OpenCloud

Cette page est une ébauche.

Cette page va détailler l'installation d'OpenCloud dans la distribution DietPi.

Pourquoi OpenCloud

OpenCloud est un "cloud" plus léger que NextCloud. Là où NextCloud veut absolument tout faire (fichiers, contacts, agenda, circuit de validation de documents, cartes…), OpenCloud veut se cantonner à l'essentiel : Les fichiers.

Quand NextCloud est une grosse application php avec base de données, OpenCloud est un simple exécutable sans base de données.

Si vous avez besoin d'un cloud juste pour le partage de fichiers et documents, OpenCloud est une solution intéressante, plus légère et plus véloce que NextCloud. OpenCloud fournit également un accès WebDav.

Installation et configuration

Au niveau des répertoires:

  • L'application sera installée dans /opt/opencloud
  • Les fichiers de config dans /etc/opencloud
  • Les données applicatives et données utilisateur dans /mnt/dietpi_userdata/opencloud (ce qui est le standard pour DietPi).

OpenCloud est distribué sous forme d'un unique exécutable. Vous pouvez le télécharger sur https://github.com/opencloud-eu/opencloud/releases/ pour votre architecture.

On va l'installer dans /opt/opencloud:

sudo mkdir -p /opt/opencloud
sudo cp opencloud-6.2.0-linux-amd64 /opt/opencloud/opencloud
sudo chmod +x /opt/opencloud/opencloud

Création du fichier de configuration:

sudo mkdir -p /etc/opencloud

puis créez le fichier /etc/opencloud/opencloud.env contenant:

OC_CONFIG_DIR=/etc/opencloud
OC_BASE_DATA_PATH=/mnt/dietpi_userdata/opencloud
OC_INSECURE=true
WEB_HTTP_ADDR=0.0.0.0:9800
STORAGE_USERS_DRIVER=posix
STORAGE_USERS_POSIX_ROOT=/mnt/dietpi_userdata/opencloud/storage/users
OC_LOG_LEVEL=warn
OC_LOG_FILE=/var/log/opencloud/opencloud.log

Ne vous inquiétez pas pour le OC_INSECURE=true : On utilisera Apache comme reverse-proxy pour la partie https.

On va créer un utilisateur sous lequel tournera le service:

sudo useradd --system --no-create-home --shell /usr/sbin/nologin opencloud

Création du répertoire de stockage des données:

sudo mkdir -p /mnt/dietpi_userdata/opencloud
sudo chown -R opencloud:opencloud /mnt/dietpi_userdata/opencloud
sudo mkdir -p /var/log/opencloud/
sudo chown -R opencloud:opencloud /var/log/opencloud/

Et

sudo chown -R opencloud:opencloud /etc/opencloud

Création du service

Un lancement initial d'OpenCloud doit etre fait pour qu'il créé ses fichiers de configuration avec les clés.

sudo -u opencloud bash -c 'set -a; source /etc/opencloud/opencloud.env; /opt/opencloud/opencloud init --admin-password admin'

Vous aurez un avertissement:

Do you want to configure OpenCloud with certificate checking disabled?
 This is not recommended for public instances! [yes | no = default] 

Répondez Y et validez.

Cela va créer le fichier /etc/opencloud/opencloud.yaml contenant la configuration de base et les clés de chiffrement.

Création du service (/etc/systemd/system/opencloud.service):

[Unit]
Description=OpenCloud server
After=network.target
Wants=network-online.target

[Service]
Type=simple
User=opencloud
Group=opencloud
WorkingDirectory=/opt/opencloud
EnvironmentFile=/etc/opencloud/opencloud.env
ExecStart=/opt/opencloud/opencloud server
Restart=on-failure
RestartSec=5
LimitNOFILE=65536
PrivateTmp=true
ProtectSystem=full
ProtectHome=true
ReadWritePaths=/mnt/dietpi_userdata/opencloud

[Install]
WantedBy=multi-user.target

Lancement du service:

sudo systemctl daemon-reload
sudo systemctl enable --now opencloud.service

FIXME lancement initial à faire avec init du mot de passe admin.

Voir les journaux:

sudo journalctl -u opencloud.service -f

Configuration d'Apache en reverse-proxy

FIXME

Configurations complémentaires

Configurations complémentaires (dans /etc/opencloud/opencloud.env):

  • Autoriser le partage par lien externe sans mot de passe:
    OC_SHARING_PUBLIC_SHARE_MUST_HAVE_PASSWORD=false
    OC_SHARING_PUBLIC_WRITEABLE_SHARE_MUST_HAVE_PASSWORD=false
opencloud.txt · Dernière modification : 2026/05/13 15:06 de sebsauvage