linuxserver/pydioPydio(前身为AjaXplorer)是一款成熟的开源文件共享与同步软件解决方案。凭借直观的用户界面(网页/移动/桌面),Pydio提供企业级功能,帮助用户重新掌控数据隐私与控制权:用户目录连接器、传统文件系统驱动、全面的管理界面等。
!pydio
LinuxServer.io团队提供的容器具有以下特点:
我们的镜像支持多种架构,如x86-64、arm64和armhf。我们利用Docker清单实现多平台识别。有关更多信息,请参阅Docker的文档和我们的公告。
只需拉取ghcr.io/linuxserver/pydio即可获取适合您架构的正确镜像,您也可以通过标签拉取特定架构的镜像。
此镜像支持的架构如下:
| 架构 | 标签 |
|---|---|
| x86-64 | amd64-latest |
| arm64 | arm64v8-latest |
| armhf | arm32v7-latest |
以下是一些示例代码片段,帮助您开始创建容器。
兼容Docker Compose v2架构。
yaml--- version: "2.1" services: pydio: image: ghcr.io/linuxserver/pydio container_name: pydio environment: - PUID=1000 - PGID=1000 - TZ=Europe/London volumes: - <数据路径>:/config - <数据路径>:/data ports: - 443:443 restart: unless-stopped
bashdocker run -d \ --name=pydio \ -e PUID=1000 \ -e PGID=1000 \ -e TZ=Europe/London \ -p 443:443 \ -v <数据路径>:/config \ -v <数据路径>:/data \ --restart unless-stopped \ ghcr.io/linuxserver/pydio
容器镜像通过运行时传递的参数进行配置(如上所示)。这些参数以冒号分隔,表示<外部>:<内部>。例如,-p 8080:80会将容器内的端口80暴露出来,可通过主机IP的8080端口访问。
| 参数 | 功能 |
|---|---|
-p 443 | Web界面 |
-e PUID=1000 | 用户ID - 详见下文说明 |
-e PGID=1000 | 组ID - 详见下文说明 |
-e TZ=Europe/London | 指定使用的时区,例如Europe/London |
-v /config | Pydio存储配置文件的位置 |
-v /data | Pydio存储上传文件的位置 |
您可以通过使用特殊的前缀FILE__从文件中设置任何环境变量。
例如:
bash-e FILE__PASSWORD=/run/secrets/mysecretpassword
这会根据/run/secrets/mysecretpassword文件的内容设置PASSWORD环境变量。
对于我们所有的镜像,您可以使用可选的-e UMASK=022设置来覆盖容器内启动的服务的默认umask设置。请记住,umask不是chmod,它基于其值减去权限,而不是添加。在请求支持之前,请先了解umask。
使用卷(-v标志)时,主机操作系统和容器之间可能会出现权限问题。我们通过允许您指定用户PUID和组PGID来避免此问题。
确保主机上的任何卷目录都由您指定的相同用户拥有,这样权限问题就会迎刃而解。
在本例中,PUID=1000和PGID=1000,您可以通过以下命令查找您的ID:
bash$ id username uid=1000(dockeruser) gid=1000(dockergroup) groups=1000(dockergroup)
此镜像已弃用。您可以切换到Pydio Cells。
您必须为Pydio在mysql/mariadb或postgresql服务器中创建一个用户和数据库。您可以使用sqlite,无需进一步配置,但这仅应考虑用于测试目的。在数据库设置页面,请使用IP地址而非主机名...
首次运行容器时会生成自签名密钥,可在/config/keys中找到。如有需要,您可以替换为自己的密钥。
为确保公共链接共享功能正常工作,请在设置向导中将“检测到的服务器URL”更改为您的Pydio实例的URL。
要配置邮件设置,请编辑/config/ssmtp.conf文件并重启容器。
我们发布了各种Docker Mods,以启用容器内的额外功能。可通过上方动态徽章访问此镜像可用的Mods列表(如有)以及可应用于我们任何镜像的通用Mods。
docker exec -it pydio /bin/bashdocker logs -f pydiodocker inspect -f '{{ index .Config.Labels "build_version" }}' pydiodocker inspect -f '{{ index .Config.Labels "build_version" }}' ghcr.io/linuxserver/pydio我们的大多数镜像是静态的、版本化的,需要更新镜像并重新创建容器才能更新内部应用。除某些例外(如nextcloud、plex),我们不建议或支持在容器内更新应用。请参阅上方的应用设置部分,了解是否推荐对此镜像进行应用更新。
以下是更新容器的说明:
docker-compose pull
docker-compose pull pydiodocker-compose up -d
docker-compose up -d pydiodocker image prunedocker pull ghcr.io/linuxserver/pydiodocker stop pydiodocker rm pydio/config文件夹和设置将被保留)docker image prunebashdocker run --rm \ -v /var/run/docker.sock:/var/run/docker.sock \ containrrr/watchtower \ --run-once pydio
docker image prune注意:我们不认可将Watchtower用作现有Docker容器自动更新的解决方案。事实上,我们通常不鼓励自动更新。但是,对于您忘记原始参数的容器,这是一个有用的一次性手动更新工具。长期来看,我们强烈建议使用Docker Compose。
如果您想对这些镜像进行本地修改以用于开发目的或自定义逻辑:
bashgit clone [***] cd docker-pydio docker build \ --no-cache \ --pull \ -t ghcr.io/linuxserver/pydio:latest .
可以使用multiarch/qemu-user-static在x86_64硬件上构建ARM变体:
bashdocker run --rm --privileged multiarch/qemu-user-static:register --reset
注册后,您可以使用-f Dockerfile.aarch64指定要使用的dockerfile。
manifest unknown 错误
TLS 证书验证失败
DNS 解析超时
410 错误:版本过低
402 错误:流量耗尽
身份认证失败错误
429 限流错误
凭证保存错误
来自真实用户的反馈,见证轩辕镜像的优质服务