Recherche de site Web

Comment installer le serveur de synchronisation de fichiers Seafile avec Docker


Découvrez comment installer le serveur Seafile à l'aide de Docker Compose pour une synchronisation transparente des fichiers sur tous vos appareils.

L’époque où l’on s’appuyait uniquement sur des services cloud tiers pour le stockage et la synchronisation des données est révolue. L'auto-hébergement a acquis une immense popularité en raison de ses avantages sans précédent en matière de contrôle, de confidentialité et de personnalisation.

Dans cette optique, Seafile se distingue comme une solution polyvalente et open source de synchronisation et de partage de fichiers qui permet aux utilisateurs de gérer leurs données sans effort.

En auto-hébergant votre serveur Seafile, vous retrouvez la propriété de vos données, garantissant que les informations sensibles restent sous votre contrôle.

De plus, c’est une excellente alternative au populaire Nextcloud. Supposons que tout ce dont vous avez besoin est de synchroniser et de partager des fichiers entre vos appareils. Dans ce cas, nous le recommandons car Nextcloud est une solution beaucoup plus complète avec des objectifs légèrement différents axés sur la collaboration des utilisateurs.

Cependant, si vous souhaitez l'essayer, notre guide détaillé, « Comment installer Nextcloud avec Docker », vous guidera facilement tout au long du processus.

Maintenant, revenons au sujet. Tout au long de cet article, nous vous guiderons dans l'installation du serveur Seafile auto-hébergé à l'aide de Docker Compose. Alors commençons !

Conditions préalables

Bien entendu, l'installation de Docker et Docker Compose est nécessaire pour déployer un Seafile conteneurisé. Ainsi, si Docker n’est pas déjà installé, l’un des guides suivants vous sera utile :

  • Comment installer Docker sur Ubuntu 22.04
  • Comment installer Docker sur Debian 12 (Bookworm)
  • Comment installer Docker sur AlmaLinux/Rocky Linux
  • Comment installer Docker sur Fedora
  • Comment installer Docker sur Linux Mint 21
  • Comment installer Docker sur Raspberry Pi

L'autre composant essentiel est Docker Compose. N'oubliez pas qu'il est fourni séparément de Docker. Par conséquent, vous devez installer Docker avant d’ajouter Docker Compose ; sinon, Compose ne fonctionnera pas.

Son installation est assez simple, même s'il n'est pas déjà présent sur votre système Linux. Pour installer Docker Compose, saisissez les deux commandes suivantes :

sudo curl -L "https://github.com/docker/compose/releases/latest/download/docker-compose-linux-$(uname -m)" -o /usr/local/bin/docker-compose
sudo chmod +x /usr/local/bin/docker-compose

Armé de tous les outils nécessaires, il est temps de passer à l’installation.

Installer le serveur Seafile avec Docker Compose

Le déploiement du serveur Seafile illustré ci-dessous n'utilise pas HTTPS. Cela signifie que cela s'applique si vous souhaitez l'utiliser sur votre réseau local (domestique) et que le service ne sera pas exposé à Internet.

Cependant, si vous choisissez cette option, nous vous conseillons fortement de placer le serveur Seafile derrière un proxy inverse pour activer le cryptage SSL sur la connexion. Les options de proxy inverse sont nombreuses, les représentants les plus populaires étant Nginx, Nginx Proxy Manager, Caddy, Traefik, HAProxy, etc.

En revanche, si vous envisagez d'avoir le serveur Seafile visible sur le web, nous vous montrerons les options nécessaires pour émettre un certificat SSL gratuit valide afin d'assurer une connexion sécurisée entre les applications clientes et le serveur un peu plus bas.

Configuration du répertoire de travail

La première étape consiste à créer le dossier dans lequel seront placés nos fichiers de déploiement Docker Compose. Ensuite, passez-y ; à partir de maintenant, vous devez exécuter toutes les commandes plus bas dans ce guide à partir de cet emplacement.

mkdir seafile
cd seafile

Configuration du déploiement de Seafile de Docker Compose

Ensuite, créez un fichier « docker-compose.yaml » et collez-y le contenu suivant :

nano docker-compose.yaml
version: '3'

services:
  db:
    image: mariadb:10.11
    container_name: seafile-mysql
    environment:
      - MYSQL_ROOT_PASSWORD=your-mysql-password
      - MYSQL_LOG_CONSOLE=true
    volumes:
      - mysql-data:/var/lib/mysql
    restart: unless-stopped
    networks:
      - seafile-net

  memcached:
    image: memcached:latest
    container_name: seafile-memcached
    entrypoint: memcached -m 256
    restart: unless-stopped
    networks:
      - seafile-net

  seafile:
    image: seafileltd/seafile-mc:latest
    container_name: seafile
    ports:
      - "80:80"
    volumes:
      - seafile-data:/shared
    environment:
      - DB_HOST=db
      - DB_ROOT_PASSWD=your-mysql-password
      - TIME_ZONE=Etc/UTC
      - [email 
      - SEAFILE_ADMIN_PASSWORD=your-password
      - SEAFILE_SERVER_LETSENCRYPT=false
      - SEAFILE_SERVER_HOSTNAME=seafile-server-ip-address
    depends_on:
      - db
      - memcached
    restart: unless-stopped
    networks:
      - seafile-net

networks:
  seafile-net:

volumes:
  mysql-data: {}
  seafile-data: {}

Quelques paramètres doivent être ajustés avant de sauvegarder le fichier :

  • MYSQL_ROOT_PASSWORD : définissez le mot de passe qui sera défini pour le compte superutilisateur root MySQL.
  • DB_ROOT_PASSWD : vous devez saisir le même mot de passe que vous avez sélectionné pour l'option « MYSQL_ROOT_PASSWORD ». Le conteneur Seafile l'utilise pour établir une connexion à la base de données.
  • TIME_ZONE : définissez le fuseau horaire qui vous convient, par exemple : "Amérique/New_York". Les interactions avec le serveur Seafile seront ainsi répercutées dans les délais appropriés.
  • SEAFILE_ADMIN_EMAIL : en plus d'être l'adresse e-mail du compte administrateur, il s'agit du nom d'utilisateur que l'utilisateur administrateur utilisera lors de sa connexion au serveur Seafile.
  • SEAFILE_ADMIN_PASSWORD : le mot de passe du compte administrateur de l'option précédente.
  • SEAFILE_SERVER_HOSTNAME : Spécifiez l'adresse IP de la machine sur laquelle votre serveur Seafile dockerisé s'exécutera. Par exemple, « SEAFILE_SERVER_HOSTNAME=192.168.0.123 ».

Une fois que vous les avez modifiés, vous pouvez enregistrer et fermer le fichier.

Si le port 80 est déjà utilisé par un autre service sur l'hôte sur lequel vous allez exécuter le service, vous pouvez spécifier un port différent pour le serveur Seafile, par exemple :

ports:
  - "8088:80"

Bien sûr, cela signifie que le service sera disponible sur le port fourni, par exemple 8088, donc lors de la configuration du client pour se connecter au serveur, comme nous le montrerons ci-dessous, vous devrez spécifier le port qui suit le serveur. nom/adresse IP. Par exemple, « http://192.168.0.123:8088 ».

Démarrage du serveur Seafile avec Docker Compose

Enfin, nous pouvons exécuter notre pile Seafile dockerisée à l'aide de Docker Compose. Pour ce faire, exécutez la commande ci-dessous à partir du répertoire « seafile » où se trouve notre fichier « docker-compose.yaml ».

Démarrez et exécutez les conteneurs en arrière-plan :

docker-compose up -d

Le téléchargement des images Docker commencera. L'ensemble de la procédure peut prendre de quelques secondes à quelques minutes, selon la vitesse de votre connexion Internet.

À la fin, vous devriez voir un écran similaire à celui ci-dessous, vous informant que l'installation de votre serveur Seafile a été déployée avec succès et est opérationnelle.

Le retard initial du démarrage des conteneurs ne sera que la première fois car Docker doit télécharger des images depuis Internet. Après cela, toutes les exécutions suivantes prendront quelques secondes puisqu'elles seront déjà disponibles localement sur votre système Linux.

Connectez-vous au serveur Seafile

Ouvrez un navigateur Web et pointez-le vers l'adresse IP de la machine sur laquelle le serveur Seafile est exécuté. Un écran de connexion vous accueillera.

Saisissez l'e-mail et le mot de passe que vous avez définis pour les options « SEAFILE_ADMIN_EMAIL » et « SEAFILE_ADMIN_PASSWORD » dans le fichier « docker-compose.yaml », puis appuyez sur le bouton « Connexion ».

Félicitations! Mission accomplie. Votre nouveau serveur Seafile a été installé avec succès et vous pouvez désormais le gérer via son interface de gestion Web.

Serveur Seafile avec certificat SSL

Si vous envisagez d'accéder à votre serveur Seafile depuis Internet, vous devez sécuriser la connexion avec un certificat SSL (HTTPS).

Heureusement, Seafile propose une option qui émet automatiquement un certificat Let's Encrypt vous offrant cette fonctionnalité. Tout ce dont vous avez besoin pour en profiter est un nom de domaine valide.

Pour ce guide, nous utiliserons « seafile.tmplinux.com ». Pour activer cette fonctionnalité, apportez les modifications suivantes au fichier « docker-compose.yaml ».

  • Ajoutez le port 443 à la section « ports ».
  • Définissez l'option « SEAFILE_SERVER_LETSENCRYPT » sur « true ».
  • Spécifiez l'adresse du domaine où le service sera situé en l'ajoutant comme valeur à « SEAFILE_SERVER_HOSTNAME » au format « sever.example.com ».

Après avoir démarré le serveur, attendez quelques secondes que Seafile demande et obtienne le certificat SSL. Ouvrez ensuite l'adresse et vous verrez que vous avez reçu un certificat Let's Encrypt valide, garantissant une communication HTTPS sécurisée avec le serveur.

Connectez le client Seafile au serveur

La prochaine chose importante à faire est, selon le système d'exploitation que vous utilisez, d'installer l'application client de bureau pour interagir avec le serveur Seafile afin de synchroniser vos fichiers locaux avec le serveur.

Seafile propose des clients de bureau pour Windows, Linux et macOS qui peuvent être téléchargés à partir du site Web du projet. De plus, si vous utilisez le service depuis vos appareils mobiles, vous pouvez télécharger un client Android depuis Google Play Store ou un client iOS depuis Apple App Store.

Ci-dessous, nous allons vous montrer comment installer le client Seafile pour certaines des distributions Linux les plus utilisées.

Ubuntu, Debian, Linux Mint

Pour installer le client de synchronisation de bureau Seafile, tapez la commande APT suivante :

sudo apt install seafile-gui

Arch Linux, Manjaro

Arch et les utilisateurs de distributions basées sur Arch peuvent installer le client Seafile à partir du référentiel AUR à l'aide de l'assistant AUR en tant que yay, en effectuant :

yay -S seafile-client

Cependant, si vous n’avez aucune expérience avec le référentiel AUR d’Arch, ne vous inquiétez pas, nous avons ce qu’il vous faut. Notre guide détaillé, « Comment installer les packages AUR dans Arch Linux », vous aidera à accomplir cette tâche en toute simplicité.

Feutre

Les utilisateurs de Fedora ont le client Seafile dans les référentiels de la distribution, ils ne sont donc qu'à une commande DNF de l'installer.

sudo dnf install seafile-client

Après l'avoir installé, vous pouvez le démarrer à partir du menu de l'application de bureau. Recherchez « seafile » et lorsque son icône apparaît, cliquez pour l'exécuter.

Choisissez le répertoire dans lequel vous souhaitez synchroniser vos fichiers. A noter qu'un sous-répertoire appelé « Seafile » y sera automatiquement créé. Ensuite, cliquez sur « Suivant ».

Entrez l'adresse du serveur Seafile et les informations d'identification de l'utilisateur dans la fenêtre suivante, et enfin, cliquez sur le bouton « Connexion ».

La fenêtre se fermera et l'application client Seafile se lancera. Vous êtes prêt à commencer la synchronisation de vos fichiers avec le serveur Seafile.

De plus, vous pouvez également installer le client sur vos autres appareils si vous avez besoin d'y conserver vos fichiers.

Conseils bonus

En plus du client de bureau Seafile Sync, vous disposez également du client Seafile Drive. Il vous permet d'accéder aux fichiers sur le serveur sans synchronisation avec un disque local. En d’autres termes, cela fonctionne comme un lecteur réseau.

Vous pouvez l'obtenir en le téléchargeant et en l'installant à partir de la section Téléchargement du site Web Seafile.

De plus, si vous vous demandez : « D'accord, mais comment puis-je mettre à jour le conteneur Seafile lorsqu'une nouvelle version sort ? " Il n'y a pas de place pour l'inquiétude, car nous avons ce qu'il vous faut.

Avec l'aide de Watchtower et de notre guide détaillé et facile à suivre, « Watchtower : mettre automatiquement à jour les images du conteneur Docker », vous disposerez toujours de la version Seafile la plus à jour.

Enfin, si travailler dans un terminal n'est pas votre truc, Portainer est là pour vous aider en fournissant une interface Web confortable pour interagir avec les conteneurs Docker.

Vous n'en avez jamais entendu parler ? La simple lecture de « Comment installer et utiliser Portainer pour gérer les conteneurs Docker » vous captivera.

Conclusion

Ce guide vous a montré comment installer Seafile File Sync Server à l'aide de Docker Compose. De plus, nous vous avons montré comment installer l'application client et la connecter au serveur.

En suivant les étapes décrites, vous pouvez exploiter le potentiel de la synchronisation des données de Seafile tout en bénéficiant du déploiement d'applications encapsulées et portables de Docker Compose.

Cette approche rationalise le processus de configuration et garantit des performances cohérentes et fiables quelle que soit l'infrastructure sous-jacente.

Merci pour votre temps ! Si vous avez des questions, veuillez les laisser dans la section commentaires ci-dessous. Pour en savoir plus sur Seafile, visitez son site Web ou consultez la documentation.

Articles connexes: