Pesquisa de site

Como instalar o servidor de compartilhamento de arquivos Pydio Cells no Ubuntu 22.04


Pydio Cells, também conhecido como Pydio, é um aplicativo de código aberto para compartilhamento e sincronização de arquivos escrito na linguagem Golang. É executado em um servidor ou nuvem e usado para compartilhar arquivos com o cliente. É uma ferramenta de colaboração e compartilhamento de documentos auto-hospedada que permite compartilhar e acessar vários documentos, como arquivos, imagens e vídeos, de qualquer lugar usando um aplicativo móvel, software de desktop ou navegador da web. Oferece clientes nativos para Linux, Windows e macOS, e clientes móveis para Android e iOS.

Este guia explicará como instalar o aplicativo de compartilhamento de arquivos Pydio no Ubuntu 22.04.

Pré-requisitos

  • Um servidor executando Ubuntu 22.04.
  • Uma senha root é configurada no servidor.

Instalar e configurar o MariaDB

Pydio usa MariaDB para armazenar seus dados, então você deve instalar o servidor de banco de dados MariaDB em seu servidor. Você pode instalá-lo executando o seguinte comando:

apt install mariadb-server -y

depois de instalar o servidor MariaDB, você pode proteger a instalação do MariaDB usando o seguinte comando:

mysql_secure_installation

Este script definirá uma senha root, removerá usuários anônimos, proibirá o login root remotamente e removerá o banco de dados de teste conforme mostrado abaixo:

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

Em seguida, faça login no MariaDB como usuário root:

mysql -u root -p

Depois de logado, crie um banco de dados e um usuário com o seguinte comando:

CREATE DATABASE pydiodb;
CREATE USER 'pydiodb'@'localhost' IDENTIFIED BY 'password';

A seguir, conceda todos os privilégios ao Pydio com o seguinte comando:

GRANT ALL PRIVILEGES ON pydiodb.* to 'pydiouser'@'localhost';

Em seguida, libere os privilégios e saia do shell MariaDB com o seguinte comando:

FLUSH PRIVILEGES;
EXIT;

Instale células Pydio no Ubuntu 22.04

Por padrão, o pacote Pydio não está disponível no repositório Ubuntu 22.04. Portanto, você precisará baixá-lo do site oficial.

Você pode baixar a versão mais recente das células Pydio usando o seguinte comando:

distribId=cells 
wget -O /usr/bin/cells https://download.pydio.com/latest/${distribId}/release/{latest}/linux-amd64/${distribId}

Assim que o download for concluído, defina a permissão adequada no arquivo baixado e vincule-o à porta HTTP usando o seguinte comando:

chmod +x /usr/bin/cells
setcap 'cap_net_bind_service=+ep' /usr/bin/cells

A seguir, verifique a versão das células Pydio usando o seguinte comando:

cells version

Você obterá a seguinte saída:

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 seguir, configure as células Pydio usando o seguinte comando:

cells configure

Você será solicitado a selecionar os diferentes tipos de instalação.

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)

Selecione a instalação baseada em navegador e pressione a tecla Enter. Depois que as células Pydio estiverem configuradas, você obterá a seguinte saída:

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

Neste ponto, o Pydio Cells está instalado e configurado. Agora você pode prosseguir para a próxima etapa.

Acesse a interface da web das células Pydio

Agora você pode acessar as células Pydio usando o URL https://your-server-ip:8080. Você deverá ver a página do contrato de licença das células Pydio:

Concorde com o contrato de licença e clique no botão PRÓXIMO. Você deverá ver a página de configuração do banco de dados.

Forneça a configuração do seu banco de dados e clique no botão PRÓXIMO. Você deverá ver a página de criação de usuário administrador:

Forneça seu nome de usuário e senha de administrador e clique no botão PRÓXIMO. Você deverá ver a seguinte página:

Agora, clique no botão INSTALAR AGORA. Você deverá ver a página de login do Pydio Cells:

Forneça seu nome de usuário e senha de administrador e clique no botão ENTER. Você deverá ver o painel do Pydio na seguinte página:

Criar arquivo de serviço Systemd para células Pydio

Em seguida, você precisará criar um arquivo de serviço systemd para gerenciar o serviço Pydio. Primeiro, pressione CTRL+C para interromper o serviço Pydio e crie um arquivo de serviço systemd com o seguinte comando:

nano /etc/systemd/system/cells.service

Adicione as seguintes linhas:

[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

Salve e feche o arquivo e recarregue o daemon systemd para aplicar as alterações:

systemctl daemon-reload

Em seguida, inicie e habilite o serviço Pydio com o seguinte comando:

systemctl enable cells
systemctl start cells

Você também pode verificar o status do Pydio com o seguinte comando:

systemctl status cells

Você obterá a seguinte saída:

? 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>

Agora você pode acessar o painel do Pydio Cells usando a URL https://your-server-ip:8080

Conclusão

Parabéns! você instalou e configurou Pydio Cells com sucesso no Ubuntu 22.04. Agora você pode implantar Pydio Cells em seu próprio servidor, fazer upload de seus arquivos, documentos e imagens do painel do Pydio e acessá-los de qualquer dispositivo móvel ou navegador da web. Sinta-se à vontade para me perguntar se tiver alguma dúvida.

Artigos relacionados: