Installer Pydio Cells avec Docker Compose en 2 minutes

Installer Pydio Cells avec Docker Compose en 2 minutes

Vous êtes à la recherche d'une alternative sérieuse à l'outil Open Source Nextcloud ? Pydio Cells est fait pour vous ! Avec une récente refonte du logiciel en langage GO, la plateforme de collaboration, de partage et de stockage de fichiers s'est modernisé et apporte son lot de fonctionnalités.

Découvrons comment installer Pydio Cells avec Docker Compose en 2 minutes !

Présentation

Pydio Cells est un logiciel Open Source collaboratif permettant le partage et le stockage de fichiers. C'est une excellente alternative à Nextcloud, avec une interface simple et épurée. En voici une capture d'écran :

Installation

Nous allons voir comment installer Pydio Cells avec Docker Compose en utilisant MySQL pour la base de données.

Création du service Pydio Cells

Passons à la création du fichier docker-compose.yml et déclarons notre premier service Pydio Cells comme ceci :

---
version: '3.7'
services:
  cells:
    image: pydio/cells:latest
    container_name: cells
    restart: unless-stopped
    ports: ["8080:8080"]
    volumes:
      - cellsdir:/var/cells
      - data:/var/cells/data
    env_file: .env

Rien de particulier sur la déclaration du service Pydio Cells, si ce n'est les deux volumes Docker cellsdir et data qui stockent respectivement les répertoires qui seront créés sur le logiciel ainsi que les données liées.

Création du service MySQL

Pour la création du service MySQL, ajoutons cela à notre docker-compose.yml :

  mysql:
    image: mysql:8
    restart: unless-stopped
    container_name: mysql
    command: [mysqld, --character-set-server=utf8mb4, --collation-server=utf8mb4_unicode_ci]
    volumes:
      - mysqldata:/var/lib/mysql
    env_file: .env

Là encore, tout ce qui a de plus classique, pensez tout de même ajouter la command qui va venir override l'ENTRYPOINT.

Variables d'environnement

Comme vous l'avez remarqué sur le déploiement des deux conteneurs précédemment, j'ai mentionné env_file ce qui signifie que nous allons utiliser un fichier .env contenant toutes nos variables d'environnement comme ceci :

CELLS_SITE_BIND=0.0.0.0:8080
CELLS_SITE_EXTERNAL=http(s)://url-to-access
CELLS_SITE_NO_TLS=1
CELLS_WORKING_DIR=/var/cells
CELLS_LOG=info

# MySQL
MYSQL_ROOT_PASSWORD=P@ssw0rd
MYSQL_DATABASE=cells
MYSQL_USER=pydio
MYSQL_PASSWORD=P@ssw0rd

Pensez à remplir les bonnes valeurs, notamment pour la variable CELLS_SITE_EXTERNAL qui stocke l'URL de votre site.

Finalisation

Maintenant que nous avons tout défini, vous devriez avoir un fichier docker-compose.yml correspondant à ceci :

---
version: '3.7'
services:
  cells:
    image: pydio/cells:latest
    container_name: cells
    restart: unless-stopped
    ports: ["8080:8080"]
    volumes:
      - cellsdir:/var/cells
      - data:/var/cells/data
    env_file: .env

  mysql:
    image: mysql:8
    restart: unless-stopped
    container_name: mysql
    command: [mysqld, --character-set-server=utf8mb4, --collation-server=utf8mb4_unicode_ci]
    volumes:
      - mysqldata:/var/lib/mysql
    env_file: .env

volumes:
  data:
  cellsdir:
  mysqldata:

Pour procéder à son déploiement, il suffit d'exécuter la commande Docker suivante :

docker-compose up -d

Vous pourrez ensuite accéder à l'interface web de Pydio Cells sur votre navigateur avec l'adresse que vous avez entré dans la variable CELLS_SITE_EXTERNAL.

Vous aurez ensuite un assistant comme ceci :

Il faut bien remplir les informations suivantes (correspondant aux infos du fichier .env):

  • Host Name : mysql
  • Port : 3306
  • Database Name : cells
  • Database User : pydio
  • Database Password : <Password contenu dans le fichier .env>

L'installation de Pydio Cells est maintenant terminée !