Pydio Cells 是适用于企业的开源文档共享和协作平台。它允许您在组织内共享文档和文件,并让您完全控制文档共享环境。Pydio Cells 性能快速,可处理巨大的文件传输量,并提供先进的工作流程自动化。
在本指南中,我们将向您介绍如何在配备 MariaDB 服务器和 Apache 或 httpd 网络服务器的 Rocky Linux 9 服务器上安装 Pydio Cells。您还将使用 Letsencrypt 的 SSL/TLS 加密安装。
开始之前,请确保您拥有:
Pydio cells 是一个文档共享和协作平台,可与 Apache 网络服务器和 MariaDB 服务器一起运行。因此,首先要在 Rocky Linux 机器上安装并启动 Apache 和 MariaDB。
首先,安装 EPEL 资源库,然后用以下命令安装 MariaDB 服务器和 Apache 网络服务器。此外,还要安装用于生成 SSL/TLS 证书的 certbot。
sudo dnf install epel-release
sudo dnf install mariadb-server httpd certbot wget
输入 Y 确认安装。
安装完成后,使用下面的命令启动并启用 httpd 服务。
sudo systemctl start httpd
sudo systemctl enable httpd
然后,验证 httpd 服务,确保服务正在运行并已启用。
sudo systemctl status httpd
如下所示,httpd 服务正在运行。
接下来,使用以下命令启动并启用 mariadb 服务器:
sudo systemctl start mariadb
sudo systemctl enable mariadb
最后,使用以下命令验证 mariadb 服务,确保其正在运行:
sudo systemctl status mariadb
下面可以看到 mariadb 服务也在运行:
默认情况下,Firewalld 在 Rocky Linux 上处于激活状态。因此,现在必须在 firewalld 上同时打开 HTTP 和 HTTPS 服务,并允许访问 httpd 网络服务器。
运行下面的命令在 firewalld 上同时打开 HTTP 和 HTTPS 服务。然后,重新加载 firewalld 以应用更改。
sudo firewall-cmd --add-service={http,https} --permanent
sudo firewall-cmd --reload
现在使用下面的命令验证 firewalld 的状态。确保 HTTP 和 HTTPS 服务都已添加到 firewalld。
sudo firewall-cmd --list-all
默认情况下,MariaDB 服务器不带密码验证。要确保密码安全并设置密码,可以使用 mariadb-secure-installation 工具。之后,还需要为安装的 Pydio Cells 创建一个新数据库和用户。
要确保 MariaDB 服务器安装安全,请运行下面的命令:
sudo mariadb-secure-installation
执行命令后,系统会提示你进行以下 MariaDB 配置:
现在你已经确保了 MariaDB 的安全并配置了根密码,继续为 Pydio Cells 创建新数据库和用户。
用下面的命令登录 MariaDB 服务器。出现提示时,键入你的 MariaDB 根密码:
sudo mariadb -u root -p
运行下面的查询,为 Pydio Cells 创建一个新的 MariaDB 数据库和用户。在本例中,将创建一个新的数据库 cell,用户名为 pydio。此外,请确保将下面的密码改为你自己的密码。
CREATE DATABASE cells;
CREATE USER 'pydio'@'localhost' IDENTIFIED BY 'p4ssw0rd';
GRANT ALL PRIVILEGES ON cells.* to 'pydio'@'localhost';
FLUSH PRIVILEGES;
接下来,运行以下查询验证用户 pydio 的权限。确保用户 pydio 可以访问数据库单元格:
SHOW GRANTS FOR 'pydio'@'localhost';
最后,键入 quit 退出 MariaDB 服务器。
本节将创建一个新的 Linux 用户,用于运行 Pydio 单元。这也将为 Pydio 加载一些全局环境变量。
要创建新的 pydio 用户,请运行以下命令:
sudo useradd -m -s /bin/bash pydio
现在运行以下命令创建 Pydio Cells 所需的 /opt/pydio/bin 和 /var/cells 目录。
sudo mkdir -p /opt/pydio/bin /var/cells
sudo chown -R pydio: /opt/pydio /var/cells
创建新的 bash 配置文件脚本 /etc/profile.d/cells-env.sh,并使用下面的命令使其可执行。用户将自动加载该文件。
sudo touch /etc/profile.d/cells-env.sh
sudo chmod +x /etc/profile.d/cells-env.sh
使用 nano 编辑器命令打开 /etc/profile.d/cells-env.sh
sudo nano /etc/profile.d/cells-env.sh
添加以下配置,为 Pydio Cells 创建环境变量。
export CELLS_WORKING_DIR=/var/cells
export CELLS_BIND=127.0.0.1:8080
export CELLS_EXTERNAL=https://cells.hwdomain.io
完成后,保存并退出文件。
下面是 Pydio Cells 的详细环境变量:
现在,您已经安装并配置了依赖项,还为 Pydio 创建了一个新用户。现在就可以将 Pydio 下载到 Rocky Linux 系统中了。
使用以下命令将 Pydio Cells 下载并安装到 /opt/pydio/bin/cells。Pydio Cells 是一个二进制程序,可以安装在二进制路径上。
export distribId=cells
wget -O /opt/pydio/bin/cells https://download.pydio.com/latest/${distribId}/release/{latest}/linux-amd64/${distribId}
下载完成后,使用以下命令使其可执行。
chmod a+x /opt/pydio/bin/cells
现在运行下面的命令,允许 /opt/pydio/bin/cells 程序绑定并在特权端口运行。然后,在系统 bin 路径下创建 Pydio Cells 的符号链接。
sudo setcap 'cap_net_bind_service=+ep' /opt/pydio/bin/cells
sudo ln -s /opt/pydio/bin/cells /usr/local/bin/cells
接下来,以用户 pydio 的身份登录,并使用以下命令验证可用的环境变量。确保每个环境变量都指向了 /etc/profile.d/cells-env.sh 文件中的正确值。
su - pydio
echo $CELLS_WORKING_DIR
echo $CELLS_BIND
echo $CELLS_EXTERNAL
最后,你可以用下面的命令验证 Pydio Cells 的版本。
cells version
如下图所示,Pydio Cells 4.3.5 已安装在 Rocky Linux 系统中。
现在你已经下载了 Pydio Cells,可以继续通过命令行配置 Pydio Cells 的安装。这样,你就可以从终端轻松安装 Pydio 了。
运行下面的 cells 命令,通过命令行配置 Pydio Cells 的安装。
cells configure --cli
下面会询问你一些配置:
一切配置完成后,就可以开始安装了。安装完成后,会出现 "Installation Finished(安装完成)"的提示。
在本节中,你将创建一个新的 systemd 服务文件,用于运行 Pydio Cells。有了它,你就可以通过 systemctl 命令工具轻松管理 Pydio Cells。
使用以下 nano 编辑器命令创建新的 systemd 服务文件 /etc/systemd/system/cells.service
sudo nano /etc/systemd/system/cells.service
添加以下配置,将 Pydio Cells 设置为 systemd 服务。你还可以看到,Pydio 将以用户 pydio 的身份运行,请务必根据自己的设置调整环境变量。
[Unit]
Description=Pydio Cells
Documentation=https://pydio.com
Wants=network-online.target
After=network-online.target
AssertFileIsExecutable=/opt/pydio/bin/cells
[Service]
User=pydio
Group=pydio
PermissionsStartOnly=true
AmbientCapabilities=CAP_NET_BIND_SERVICE
ExecStart=/opt/pydio/bin/cells start
Restart=on-failure
StandardOutput=journal
StandardError=inherit
LimitNOFILE=65536
TimeoutStopSec=5
KillSignal=INT
SendSIGKILL=yes
SuccessExitStatus=0
WorkingDirectory=/home/pydio
# Add environment variables
Environment=CELLS_WORKING_DIR=/var/cells
Environment=CELLS_BIND=127.0.0.1:8080
Environment=CELLS_EXTERNAL=https://cells.hwdomain.io
[Install]
WantedBy=multi-user.target
完成后,保存并退出文件。
现在运行下面的命令重新加载 systemd 管理器。
sudo systemctl daemon-reload
然后,使用以下命令启动并启用细胞服务。
sudo systemctl start cells
sudo systemctl enable cells
最后,使用以下命令验证细胞服务状态。细胞服务应该正在系统中运行。
sudo systemctl status cells
现在,Pydio Cells 已经运行,你需要创建一个新的 httpd 配置,用作反向代理。此外,你还需要生成 SSL/TLS 证书,以确保安装安全。
首先,使用下面的命令创建一个新目录 /var/www/html/cells/public_html。
sudo mkdir -p /var/www/html/cells/public_html
sudo chown -R apache:apache /var/www/html/cells/public_html
使用下面的 certbot 命令生成 SSL/TLS 证书。确保更改 Pydio Cells 安装的电子邮件地址和目标域名。
sudo certbot certonly --agree-tos --email user@email.com --no-eff-email --webroot -w /var/www/html/cells/public_html -d cells.hwdomain.io
完成该过程后,使用以下 nano 编辑器命令创建新的 httpd 虚拟主机文件 /etc/httpd/conf.d/cells.conf
sudo nano /etc/httpd/conf.d/cells.conf
插入以下配置,并确保根据目标安装更改域名。
<VirtualHost *:80>
ServerName cells.hwdomain.io
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI}
RewriteCond %{SERVER_NAME} =cells.hwdomain.io
RewriteRule ^ https://%{SERVER_NAME}%{REQUEST_URI} [END,NE,R=permanent]
</VirtualHost>
<VirtualHost *:443>
ServerName cells.hwdomain.io
AllowEncodedSlashes On
RewriteEngine On
# be aware of this
# Allow reverse proxy via self-signed certificates
SSLProxyEngine On
SSLProxyVerify none
SSLProxyCheckPeerCN off
SSLProxyCheckPeerName off
SSLProxyCheckPeerExpire off
## The order of the directives matters.
# If Cells is not running with https, consider using ws instead of wss
ProxyPassMatch "/ws/(.*)" wss://localhost:8080/ws/$1 nocanon
## This rewrite condition is required if using Cells-Sync
# RewriteCond %{HTTP:Content-Type} =application/grpc [NC]
# RewriteRule /(.*) h2://localhost:8080/$1 [P,L]
ProxyPass "/" "https://127.0.0.1:8080/"
ProxyPassReverse "/" "https://127.0.0.1:8080/"
ErrorLog /var/log/httpd/error.log
CustomLog /var/log/httpd/access.log combined
SSLCertificateFile /etc/letsencrypt/live/cells.hwdomain.io/fullchain.pem
SSLCertificateKeyFile /etc/letsencrypt/live/cells.hwdomain.io/privkey.pem
#Include /etc/letsencrypt/options-ssl-apache.conf
</VirtualHost>
完成后,保存文件并退出。
现在,运行下面的命令来验证你的 httpd 语法。然后,重启 httpd 服务以应用您的更改。
sudo apachectl configtest
sudo systemctl restart httpd
如果你的 httpd 语法正确,应该会看到输出语法 OK。
最后,启动浏览器访问 Pydio Cells 域名,如 https://ceels.hwdomain.io/。如果安装成功,你会看到 Pydio Cells 登录页面。
输入你创建的管理员用户和密码,然后点击回车。
登录后,您将看到如下的 Pydio Cells 用户仪表板:
恭喜你 你已经在 Rocky Linux 9 服务器上成功安装了 Pydio Cells。您已经在 Pydio Cells 上安装了 MariaDB 数据库服务器和 httpd 反向代理。此外,您还使用了来自 Letsencrypt 的 SSL/TLS 证书,确保了安装的安全性。
上一条: 域名型SSL证书配置详细步骤
下一条: 日本.JP域名注册字符的限制