Cómo instalar el servidor de compartición de archivos Pydio Cells en Ubuntu 22.04
Pydio Cells también conocido como Pydio es una aplicación de código abierto para compartir y sincronizar archivos escrita en lenguaje Golang. Se ejecuta en un servidor o en la nube y se utiliza para compartir archivos con el cliente. Es una herramienta de colaboración y compartición de documentos autoalojada que te permite compartir y acceder a diversos documentos como archivos, imágenes y vídeos desde cualquier lugar mediante una aplicación móvil, un software de escritorio o un navegador web. Ofrece clientes nativos para Linux, Windows y macOS, y clientes móviles para Android e iOS.
Esta guía explicará cómo instalar la aplicación para compartir archivos Pydio en Ubuntu 22.04.
Requisitos previos
- Un servidor con Ubuntu 22.04.
- Una contraseña de root configurada en el servidor.
Instalar y configurar MariaDB
Pydio utiliza MariaDB para almacenar sus datos, por lo que debes instalar el servidor de base de datos MariaDB en tu servidor. Puedes instalarlo ejecutando el siguiente comando:
apt install mariadb-server -y
después de instalar el servidor MariaDB, puedes asegurar la instalación de MariaDB mediante el siguiente comando:
mysql_secure_installation
Este script establecerá una contraseña de root, eliminará los usuarios anónimos, no permitirá el inicio de sesión de root de forma remota y eliminará la base de datos de prueba, como se muestra a continuación:
Set root password? [Y/n] n Remove anonymous users? [Y/n] y Disallow root login remotely? [Y/n] y Remove test database and access to it? [Y/n] y Reload privilege tables now? [Y/n] y
A continuación, inicia sesión en MariaDB como usuario root:
mysql -u root -p
Una vez que hayas iniciado sesión, crea una base de datos y un usuario con el siguiente comando:
CREATE DATABASE pydiodb; CREATE USER 'pydiodb'@'localhost' IDENTIFIED BY 'password';
A continuación, concede todos los privilegios al Pydio con el siguiente comando:
GRANT ALL PRIVILEGES ON pydiodb.* to 'pydiouser'@'localhost';
A continuación, vacía los privilegios y sal del intérprete de comandos MariaDB con el siguiente comando:
FLUSH PRIVILEGES; EXIT;
Instalar Células Pydio en Ubuntu 22.04
Por defecto, el paquete Pydio no está disponible en el repositorio de Ubuntu 22.04. Así que tendrás que descargarlo de su sitio web oficial.
Puedes descargar la última versión de Pydio cells utilizando el siguiente comando:
distribId=cells wget -O /usr/bin/cells https://download.pydio.com/latest/${distribId}/release/{latest}/linux-amd64/${distribId}
Una vez completada la descarga, establece el permiso adecuado en el archivo descargado y enlázalo al puerto HTTP utilizando el siguiente comando:
chmod +x /usr/bin/cells setcap 'cap_net_bind_service=+ep' /usr/bin/cells
A continuación, verifica la versión de Pydio cells utilizando el siguiente comando:
cells version
Obtendrás la siguiente salida:
Pydio Cells Home Edition Version: 4.0.5 Built: 01 Dec 22 04:24 +0000 Git commit: 406762a4b5bff7b60189291ad4ee16c69a94ecd7 OS/Arch: linux/amd64 Go version: go1.19.3
Configurar células Pydio
A continuación, configura las celdas Pydio utilizando el siguiente comando:
cells configure
Se te pedirá que selecciones los distintos tipos de instalación.
Welcome to Pydio Cells Home Edition installation Pydio Cells Home Edition (v4.0.5) will be configured to run on this machine. Make sure to prepare access and credentials to a MySQL 5.6+ (or MariaDB equivalent) server. Pick your installation mode when you are ready. ? Browser-based (requires a browser access)
Selecciona la instalación basada en navegador y pulsa la tecla Intro. Una vez configuradas las Células Pydio, obtendrás la siguiente salida:
Use the arrow keys to navigate: ↓ ↑ → ← ? Installation mode: ? Browser-based (requires a browser access) Command line (performed in this terminal) ? Browser-based (requires a browser access) Installation Server is starting... Listening to: https://0.0.0.0:8080 2022-12-13T05:43:12.641Z INFO pydio.rest.config starting {"service": "pydio.rest.config", "hook router to": "/a/config"} 2022-12-13T05:43:12.659Z INFO pydio.rest.install starting {"service": "pydio.rest.install", "hook router to": "/a/install"} Open a browser window to: [https://0.0.0.0:8080] 2022-12-13T05:43:14.741Z INFO pydio.server.caddy ? Created a new local CA at "rootCA.pem" ???? 2022-12-13T05:43:14.858Z INFO pydio.server.caddy ? Created a new certificate valid for the following names ???? 2022-12-13T05:43:14.858Z INFO pydio.server.caddy - "127.0.0.1" 2022-12-13T05:43:14.858Z INFO pydio.server.caddy - "139.84.138.121" 2022-12-13T05:43:14.859Z INFO pydio.server.caddy - "localhost" 2022-12-13T05:43:14.859Z INFO pydio.server.caddy ? The certificate is at "5b92168f4e3239411477f1f5f42539f4.pem" and the key at "5b92168f4e3239411477f1f5f42539f4-key.pem" 2022-12-13T05:43:14.859Z INFO pydio.server.caddy 2022-12-13T05:43:14.859Z INFO pydio.server.caddy 2022-12-13T05:43:14.859Z INFO pydio.server.caddy ???? If you are behind a reverse proxy, you can either install the RootCA on the proxy machine trust store, or configure your proxy to `insecure_skip_verify` for pointing to Cells. 2022-12-13T05:43:14.860Z INFO pydio.server.caddy ???? If you are developing locally, you may install the RootCA in your system trust store to see a green light in your browser! 2022-12-13T05:43:14.860Z INFO pydio.server.caddy ???? To easily install the RootCA in your trust store, use https://github.com/FiloSottile/mkcert. Set the $CAROOT environment variable to the rootCA folder then use 'mkcert -install' 2022-12-13T05:43:14.860Z INFO pydio.server.caddy 2022-12-13T05:43:14.862Z WARN pydio.server.caddy admin - admin endpoint disabled 2022-12-13T05:43:14.862Z INFO pydio.server.caddy tls.cache.maintenance - started background certificate maintenance{"cache": "0xc0002bdab0"} 2022-12-13T05:43:14.863Z INFO pydio.rest.install ready 2022-12-13T05:43:14.864Z INFO pydio.web.install ready 2022-12-13T05:43:14.865Z INFO pydio.rest.config ready 2022-12-13T05:43:14.865Z WARN pydio.server.caddy tls - stapling OCSP{"error": "no OCSP stapling for [localhost 127.0.0.1 139.84.138.121]: no OCSP server specified in certificate"} 2022-12-13T05:43:14.865Z WARN pydio.server.caddy http - automatic HTTP->HTTPS redirects are disabled{"server_name": "srv0"} 2022-12-13T05:43:14.866Z INFO pydio.server.caddy autosaved config (load with --resume flag) - {"file": "/root/.config/pydio/cells/caddy/autosave.json"} 2022-12-13T05:43:14.866Z INFO pydio.server.caddy tls - cleaning storage unit{"description": "FileStorage:/root/.config/pydio/cells/caddy"} 2022-12-13T05:43:14.866Z INFO pydio.server.caddy tls - finished cleaning storage units
En este punto, Pydio Cells está instalado y configurado. Ahora puedes pasar al siguiente paso.
Acceder a la Interfaz Web de Pydio Cells
Ahora puedes acceder a Pydio Cells utilizando la URL https://your-server-ip:8080. Deberías ver la página del acuerdo de Licencia de Pydio Cells:
Acepta el Contrato de Licencia y pulsa el botón SIGUIENTE. Deberías ver la página de configuración de la base de datos.
Proporciona la configuración de tu base de datos y pulsa el botón SIGUIENTE. Debes ver la página de creación del usuario administrador:
Proporciona tu nombre de usuario y contraseña de administrador y pulsa el botón SIGUIENTE. Deberías ver la siguiente página:
Ahora, haz clic en el botón INSTALAR AHORA. Deberías ver la página de inicio de sesión de Pydio Cells:
Proporciona tu nombre de usuario admin, contraseña y haz clic en el botón ENTRAR. Deberías ver el panel de control de Pydio en la siguiente página:
Crear archivo de servicio Systemd para Pydio Cells
A continuación, tendrás que crear un archivo de servicio systemd para gestionar el servicio Pydio. Primero, pulsa CTRL+C para detener el servicio Pydio y luego crea un archivo de servicio systemd con el siguiente comando:
nano /etc/systemd/system/cells.service
Añade las siguientes líneas:
[Unit] Description=Pydio Cells Documentation=https://pydio.com Wants=network-online.target After=network-online.target AssertFileIsExecutable=/usr/bin/cells [Service] User=root Group=root PermissionsStartOnly=true AmbientCapabilities=CAP_NET_BIND_SERVICE ExecStart=/usr/bin/cells start Restart=on-failure StandardOutput=journal StandardError=inherit LimitNOFILE=65536 TimeoutStopSec=5 KillSignal=INT SendSIGKILL=yes SuccessExitStatus=0 WorkingDirectory=/root [Install] WantedBy=multi-user.target
Guarda y cierra el archivo y vuelve a cargar el demonio systemd para aplicar los cambios:
systemctl daemon-reload
A continuación, inicia y activa el servicio Pydio con el siguiente comando:
systemctl enable cells systemctl start cells
También puedes comprobar el estado de Pydio con el siguiente comando:
systemctl status cells
Obtendrás la siguiente salida:
? cells.service - Pydio Cells Loaded: loaded (/etc/systemd/system/cells.service; disabled; vendor preset: enabled) Active: active (running) since Sat 2022-12-13 11:34:24 UTC; 6s ago Docs: https://pydio.com Main PID: 25764 (cells) Tasks: 119 (limit: 2341) Memory: 421.6M CPU: 4.114s CGroup: /system.slice/cells.service ??25764 /usr/bin/cells start ??25769 /usr/bin/cells start --fork --config local --registry grpc://:8000 --broker grpc://:8003 ^pydio.grpc.jobs$ ??25775 /usr/bin/cells start --fork --config local --registry grpc://:8000 --broker grpc://:8003 ^pydio.grpc.search$ ??25781 /usr/bin/cells start --fork --config local --registry grpc://:8000 --broker grpc://:8003 ^pydio.gateway.websocket$ ??25783 /usr/bin/cells start --fork --config local --registry grpc://:8000 --broker grpc://:8003 ^pydio.grpc.data.sync.pydiods1$ ??25787 /usr/bin/cells start --fork --config local --registry grpc://:8000 --broker grpc://:8003 ^pydio.grpc.data.sync.personal$ ??25790 /usr/bin/cells start --fork --config local --registry grpc://:8000 --broker grpc://:8003 ^pydio.grpc.data.sync.cellsdata$ ??25802 /usr/bin/cells start --fork --config local --registry grpc://:8000 --broker grpc://:8003 ^pydio.grpc.data.sync.versions$ ??25805 /usr/bin/cells start --fork --config local --registry grpc://:8000 --broker grpc://:8003 ^pydio.grpc.data.sync.thumbnail> ??25816 /usr/bin/cells start --fork --config local --registry grpc://:8000 --broker grpc://:8003 ^pydio.grpc.tasks$ ??25819 /usr/bin/cells start --fork --config local --registry grpc://:8000 --broker grpc://:8003 ^pydio.grpc.data.objects.local1$ ??25847 /usr/bin/cells start --fork --config local --registry grpc://:8000 --broker grpc://:8003 ^pydio.grpc.data.index.pydiods1$ ??25848 /usr/bin/cells start --fork --config local --registry grpc://:8000 --broker grpc://:8003 ^pydio.grpc.data.index.personal$ ??25849 /usr/bin/cells start --fork --config local --registry grpc://:8000 --broker grpc://:8003 ^pydio.grpc.data.index.cellsdat> ??25850 /usr/bin/cells start --fork --config local --registry grpc://:8000 --broker grpc://:8003 ^pydio.grpc.data.index.versions$ ??25851 /usr/bin/cells start --fork --config local --registry grpc://:8000 --broker grpc://:8003 ^pydio.grpc.data.index.thumbnai> Dec 13 12:34:29 ubuntu2204 cells[25764]: 2022-12-13T11:34:29.294Z INFO pydio.test.objects Started Dec 13 12:34:29 ubuntu2204 cells[25764]: 2022-12-13T11:34:29.307Z INFO pydio.gateway.grpc Activating self-signed configura> Dec 13 12:34:29 ubuntu2204 cells[25764]: 2022-12-13T11:34:29.308Z INFO pydio.gateway.grpc Started Dec 13 12:34:30 ubuntu2204 cells[25764]: 2022-12-13T11:34:30.191Z INFO pydio.grpc.data.index.pydiods1 Warning: no private > Dec 13 12:34:30 ubuntu2204 cells[25764]: 2022-12-13T11:34:30.194Z INFO pydio.grpc.data.index.personal Warning: no private > Dec 13 12:34:30 ubuntu2204 cells[25764]: 2022-12-13T11:34:30.195Z INFO pydio.grpc.data.index.cellsdata Warning: no private> Dec 13 12:34:30 ubuntu2204 cells[25764]: 2022-12-13T11:34:30.204Z INFO pydio.grpc.data.index.thumbnails Warning: no privat> Dec 13 12:34:30 ubuntu2204 cells[25764]: 2022-12-13T11:34:30.212Z INFO pydio.grpc.data.index.versions Warning: no private > Dec 13 12:34:30 ubuntu2204 cells[25764]: 2022-12-13T11:34:30.326Z INFO pydio.gateway.proxy Restarting proxy {"caddy>
Ahora puedes acceder al panel de Pydio Cells utilizando la URL https://your-server-ip:8080
Conclusión
Enhorabuena! has instalado y configurado correctamente Pydio Cells en Ubuntu 22.04. Ahora puedes desplegar Pydio Cells en tu propio servidor, subir tus archivos, documentos e imágenes desde el tablero de Pydio, y acceder a él desde cualquier móvil o navegador web. No dudes en preguntarme si tienes alguna duda.