iTechGuides is reader-supported. When you buy through links on our site, we may earn an affiliate commission. As an Amazon Associate I earn from qualifying purchases. Learn more
Need a server to try this on? Antihost offers Linux VPS plans with NVMe storage, full root access and a 14-day free trial.
You can self-host Pydio Cells with either its Docker image or a native binary. For a dependable starting point, provide a MySQL or MariaDB database, at least two CPU cores, 4 GB of RAM, SSD-backed storage, a persistent /var/cells directory, HTTPS, and a public external URL. Run Cells as a dedicated non-root user, keep the server clock accurate, and back up the Cells data and database independently.
What Pydio Cells provides
Pydio Cells is Pydio’s current self-hosted platform for document sharing and collaboration. It is designed for large-file transfer, granular security controls, and workflow automation while keeping the application and data under your control. The software is written in Go, uses a microservice architecture, and is distributed as compiled binaries, a Docker image, and source code.
Quick wins for a faster PC:
Fix the driver behind crashes, sound loss and screen glitchesFind Drivers →Clear out junk files and repair common Windows errorsFree Scan →Scan for outdated or missing drivers - takes under a minuteDriver Scan →Cells includes its own gateway. A basic installation therefore does not require Apache or Nginx in front of it. The default gateway listens on TCP port 8080, although the bind address and port can be changed. A reverse proxy can still be useful for an existing TLS and virtual-hosting design, but it is an architectural choice rather than a basic prerequisite.
Plan the server before installing
Minimum resources
Pydio’s requirements guidance recommends a 64-bit AMD system or a 32- or 64-bit ARM system with at least two CPU cores, 4 GB of RAM, and SSD storage. These are sensible minimums for a small installation, not a promise of a particular upload speed or concurrent-user capacity. Storage should be sized for the files, versions, logs, database growth, and backup copies you intend to retain.
#1 Best Overall
- Entry-level NAS Personal Storage:UGREEN NAS DH2300 is your first and best NAS made easy. It is designed for beginners who want a simple, private way to store videos, photos and personal files, which is intuitive for users moving from cloud storage or external drives and move away from scattered date across devices. This entry-level NAS 2-bay perfect for personal entertainment, photo storage, and easy data backup (doesn't support Docker or virtual machines).
- Set Your Devices Free, Expand Your Digital World: This unified storage hub supports massive capacity up to 64TB.*Storage drives not included. Stop Deleting, Start Storing. You can store 22 million 3MB images, or 2 million 30MB songs, or 43K 1.5GB movies or 67 million 1MB documents! UGREEN NAS is a better way to free up storage across all your devices such as phones, computers, tablets and also does automatic backups across devices regardless of the operating system—Window, iOS, Android or macOS.
- The Smarter Long-term Way to Store: Unlike cloud storage with recurring monthly fees, a UGREEN NAS enclosure requires only a one-time purchase for long-term use. For example, you only need to pay $459.98 for a NAS, while for cloud storage, you need to pay $719.88 per year, $2,159.64 for 3 years, $3,599.40 for 5 years. You will save $6,738.82 over 10 years with UGREEN NAS! *NAS cost based on DH2300 + 12TB HDD; cloud cost based on 12TB plan (e.g. $59.99/month).
- Blazing Speed, Minimal Power: Equipped with a high-performance processor, 1GbE port, and 4GB RAM on Board, this NAS handles multiple tasks with ease. File transfers reach up to 125MB/s—a 1GB file takes only 8 seconds. Don't let slow clouds hold you back; they often need over 100 seconds for the same task. The difference is clear.
- Let AI Better Organize Your Memories: UGREEN NAS uses AI to tag faces, locations, texts, and objects—so you can effortlessly find any photo by searching for who or what's in it in seconds. It also automatically finds and deletes similar or duplicate photo, backs up live photos and allows you to share them with your friends or family with just one tap. Everything stays effortlessly organized, powered by intelligent tagging and recognition.
| Component | Requirement or recommendation |
|---|---|
| CPU | Two or more cores recommended; AMD 64-bit or ARM 32/64-bit is supported by the requirements guidance. |
| Memory | 4 GB RAM recommended for the general installation. |
| Storage | SSD storage recommended. |
| Operating systems | Debian/Ubuntu and RHEL-family Linux distributions are supported deployment targets. |
| Relational database | MySQL 5.7 or newer, or MariaDB 10.3 or newer. |
| Other service database | MongoDB 5 through 7 is supported for selected services. |
| Open files | The limit should be above 2,048; 8,192 is recommended for production. |
| Service account | Run Cells under a dedicated account, not root. |
The documented database dependency is MySQL; MariaDB is the compatible alternative listed in the requirements. Prepare the database and credentials before launching the setup wizard. For a database used by a container, the Docker guide calls for an account with sufficient privileges to create and configure the Cells schema.
Edition-specific sizing
| Edition | Minimum CPU | Minimum memory |
|---|---|---|
| Cells Home | 2 cores | 4 GB RAM |
| Enterprise | 4 cores | 8 GB RAM |
Those figures come from the edition-specific requirements. Licensing terms and feature availability can change, so verify the current terms for the edition you select before deployment.
Free tools Windows power users keep installed
One-click scans. No signup required.
Choose Docker or a native binary
| Consideration | Docker image | Binary or bare metal |
|---|---|---|
| Isolation | Packages Cells in the pydio/cells container and separates its process from the host installation. |
Runs the Cells executable directly under a dedicated host account. |
| Initial setup | Requires Docker plus a prepared MySQL or MariaDB database. | Requires downloading the binary, creating the account and working directory, and configuring the host service. |
| Configuration entry point | Start the container, then complete the browser wizard. | Run cells configure; finish in a browser or in the terminal. |
| Persistent state | Must be mounted from the host, normally at /var/cells. |
Lives in the configured Cells working directory. |
| Host administration | Docker manages the application process; you still manage storage, networking, database, and backups. | You manage the executable, service account, process startup, and host service directly. |
Docker is usually the quickest way to evaluate Cells or keep the application boundary clean. A native installation may fit a host where you already standardize on system services and do not want a container runtime. Both approaches require the same attention to database security, persistent storage, HTTPS, and backups.
Install Pydio Cells with Docker
1. Prepare Docker, storage, and the database
- Install a supported Docker environment on your Linux host.
- Prepare MySQL 5.7 or newer, or MariaDB 10.3 or newer. Create a database account with the privileges required by the Cells setup wizard, and record the hostname, database name, username, and password.
- Create a host directory for persistent Cells data. Ensure the container can read and write it. Do not place this directory on ephemeral container storage.
- Confirm that the host has the recommended open-file limit and that its clock is synchronized.
2. Run a test instance
The documented quick test starts the image on the host network:
docker run -d --network=host pydio/cells
Open https://localhost:8080 in a browser and complete the configuration wizard. Supply the database details, create the first administrative account, and select the storage settings requested by the wizard. This test is useful for confirming that the image starts and that the database is reachable; do not treat an unmounted test container as a production design.
Rank #2
- 【Advanced Home Data & Media Hub】For advanced home users who need phone backup, file storage, and centralized data management. Centralize family photos, 4K videos, movies, computer backups, and personal files in one place while running multiple apps for home entertainment and everyday data management. Suitable for households with growing digital libraries and multiple NAS use cases.
- 【Built for Creators, Media Servers & Advanced Apps】Powered by the Intel N100 Quad-Core CPU, 8GB DDR5 RAM, 2.5GbE networking, and dual M.2 NVMe slots, DXP2800 handles large files and heavier workloads with ease. Run Docker, virtual machines, and media server applications compatible with Plex—ideal for content creators, tech enthusiasts, and advanced home users managing 4K videos, RAW photos, personal media libraries, and multiple NAS apps.
- 【Up to 80TB for Growing Digital Libraries】 Supports up to 80TB of storage using two HDD bays and two M.2 NVMe SSD slots for family photos, movies, RAW photos, 4K videos, work files, and device backups. AI photo management supports recognition of people, objects, scenes, and locations, album organization, and duplicate photo detection. HDDs and SSDs are not included.
- 【AI-powered Home Surveillance】Turn DXP2800 into a centralized home surveillance hub by connecting compatible network cameras and storing recordings locally on your NAS. AI-powered features include Face Recognition, People Detection, and Pet Detection, helping advanced home users review important events more efficiently while managing home surveillance and personal data in one place.
- 【One data Center Across Your Devices】Keep files from desktops, laptops, phones, tablets, and other devices together instead of scattered across cloud accounts and external drives. Access, back up, organize, and share data across Windows, macOS, Android, iOS, web browsers, and compatible smart TVs—ideal for creators and advanced home users working across multiple devices.
3. Make the deployment persistent
For a live installation, mount the host directory to /var/cells. Set CELLS_SITE_BIND to the HTTPS address on which Cells should listen, and set CELLS_SITE_EXTERNAL to the public fully qualified domain name that users and clients will reach. Keep the host directory when replacing or recreating the container.
The persistent directory contains pydio.json, user data, logs, certificates, and service information. Losing it can remove the configuration and access to the files even if the database still exists. Protect it with filesystem permissions and include it in your backup plan.
4. Account for desktop synchronization
If you use Cells Sync behind a TLS-terminating proxy, the Docker documentation requires an additional gRPC port to be configured and exposed. The exact port and proxy rules depend on the topology described in that guide. Plan the firewall and proxy together: forwarding only the web port can leave browser access working while synchronization fails.
Install from the binary or on bare metal
- Download the Cells binary that matches the target operating system and CPU architecture.
- Create a dedicated account such as
pydio. Do not run the application as root. - Create a working directory owned by that account and place the executable where the service can run it.
- Start the configuration wizard with
cells configure. - Complete the wizard in the terminal or open the browser endpoint it provides. Configure the database, storage, administrator account, bind address, and external URL.
- Start Cells with
cells start. - Visit the configured HTTPS endpoint and verify that an administrator can log in, create a test folder, upload a test file, and download it again.
The native route gives you direct control over the process and host filesystem. You are also responsible for keeping the binary, service definition, permissions, limits, and restart behavior consistent when you upgrade or reboot the server.
Configure networking, HTTPS, and the public URL
Bind only what the topology needs
The default Cells gateway uses TCP 8080. Change the bind address and port when that is appropriate for your network, and open only the ports required by your chosen design. A private lab may expose the service only on an internal interface; an internet-facing server needs a public DNS name, TLS, and a carefully restricted firewall.
The Tool Desk
Outbyte PC Repair FREEClear out junk files and repair common Windows errorsFree Scan →Outbyte Driver Updater FREEFix the driver behind crashes, sound loss and screen glitchesFind Drivers →Rank #3
- 【Reliable External Storage System for Individuals and business】The 3.5 hard drive enclosure supports 2.5/3.5 inches HDD and SSD, max capacity up to 20TB for each hard drive, it's a ideal external hard drive enclosure for personal or enterprise using.Save space on your desktop or laptop.
- 【No heat】The sata enclosure built in Aluminum-Alloy materials and 2 inch Fan.Maximize the security of your data.Fan noise is around 40-50 decibels, not recommended if you are very sensitive to noise.
- 【Up to 5Gbps】This dual bay enclosure equips with advanced chips and USB 3.0 output interface.Transfer 1G files in 3-5 seconds with USB 3.0 Ports, which is 10 times faster than USB 2.0.
- 【Hot Swappable Convenience】The HDD enclosure supports hot swapping, allowing users to replace hard drives without powering off the device. This feature enhances convenience and efficiency in data transfer processes.
- 【Tool-Free Installation】Featuring a tool-free hard drive tray design, the external hard drive enclosure enables easy installation and removal of hard drives without requiring additional tools. Plug and play! No fuss, no muss!
Cells can terminate its own HTTPS traffic. If you place it behind a TLS-terminating proxy, make sure the proxy forwards the application traffic and, when synchronization is enabled, the additional gRPC service as documented for that deployment. Do not assume that a proxy handling ordinary web requests automatically handles gRPC.
Set the external URL correctly
Configure CELLS_SITE_EXTERNAL (or the equivalent wizard setting) to the public HTTPS URL users will actually enter. Desktop and mobile clients use OAuth flows that depend on this external address. A localhost name or an internal hostname can make browser login appear successful while client authorization fails.
Keep the server date, time, and time zone accurate. Pydio warns that an incorrect clock can invalidate authentication and produce errors such as HTTP 403. Use the operating system’s time-synchronization facility and check the clock after a restore or virtual-machine migration.
Storage, database, and backup design
Separate application state from disposable containers
In Docker, the container is replaceable; the mounted /var/cells directory is not. Store it on reliable SSD-backed storage and monitor free space. It holds more than uploaded documents: configuration, logs, certificates, and service metadata are also present. A container recreation that points to an empty directory behaves like a new installation.
Windows Errors? Fix Them Before They Spread
Repair common Windows errors and clear accumulated junk for a smoother, more stable PC - no reinstall needed.Free scan · no reinstallCrashes, No Sound, or Screen Glitches?
Random freezes, missing sound and display glitches usually trace back to one bad driver. Find and replace yours safely.Free scan · under a minuteBack up both sides of the application
- Back up the persistent Cells directory, including
pydio.json, data, logs, certificates, and service information. - Back up the MySQL or MariaDB database with a method that produces restorable dumps or snapshots.
- Keep at least one independent copy away from the server. A backup stored on the same disk does not protect against disk failure, accidental deletion, or ransomware.
- Test a restore before loading irreplaceable files. Verify that the restored database and Cells directory correspond to the same recovery point.
- Protect backup credentials and encryption keys separately from the live host.
Cells may contain the only copy of a shared document, but it should not be your only copy. Treat the database and persistent directory as a matched pair when planning recovery.
Rank #4
- High Speed Data Transmission: The D2-320 hard drive enclosure (a DAS, NOT a NAS) adopts USB 3.2 Gen2 protocol for high-speed data transmission up to 10Gbps. With 2 hard drives in RAID 0, the read/write speed can reach up to 521MB/s (SATA III HDD 8TB x 2). With 2 SSD's in RAID 0, the read speed can reach 1075MB/s (SATA III 1TB SSD x 2)
- Multiple RAID Configurations: The D2-320 is a hardware RAID enclosure and it supports RAID 0, RAID 1, JBOD and SINGLE which can better satisfy various demands of users. In RAID 1, data will be in a mirror backup. When there is a damaged hard drive, you can directly replace the hard drive, and the data will be recovered automatically. This provides an absolute security for the data
- Super-Large Storage Capacity: The D2-320 USB storage enclosure can support up to two 3.5" and 2.5" SATA HDD, as well as 2.5" SATA SSD, with a maximum capacity of 22TB per drive, providing users with up to 44TB (22TB x 2) of storage space
- Intelligent Temperature Control: The D2-320 HDD enclosure has an intelligent temperature-controlled and low-noise fan that automatically adjusts its speed based on the temperature of the hard disk. This feature ensures that the hard disk operates at its best temperature and provides better heat dissipation
- Tool-Free Hard Drive Installation: The D2-320 external hard drive enclosure features a tool-free hard drive tray design that allows for easy installation and removal of hard drives without the need for any tools. Furthermore, the D2-320 incorporates a brand new Push-lock unique design from TerraMaster, which automatically locks the hard drive tray when you insert the hard drive, preventing the hard drive from falling out or disconnecting
Can you run Pydio Cells on a Raspberry Pi?
Yes, for a small home or laboratory deployment. Pydio’s advanced guide documents Raspberry Pi use and suggests a Raspberry Pi 4 Model B with at least 4 GB of RAM. That recommendation aligns with the general memory minimum, but a Pi remains a constrained platform compared with a server or VPS.
- Use reliable SSD or other durable external storage rather than relying on a heavily written removable card.
- Keep the database and Cells data on storage with enough endurance and free space.
- Expect less CPU and memory headroom for indexing, large transfers, multiple users, and background services.
- Provide stable power and a recovery plan; an unexpected shutdown can affect both the database and file data.
- Use a VPN or carefully configured HTTPS exposure if the Pi is reachable from the internet.
The Pi path is appropriate when the scale and availability expectations are modest. Size a production service separately, using the edition requirements and expected workload rather than the Pi guide alone.
Choose between a Raspberry Pi, a small server, and a VPS
| Platform | Strength | Responsibility or limitation |
|---|---|---|
| Raspberry Pi 4B with 4 GB RAM | Low-cost, compact option for a small home or lab deployment. | Limited CPU, memory, storage reliability, and remote reachability compared with larger systems; requires careful external storage and power planning. |
| Small Linux server | More CPU, RAM, local storage, and expansion headroom than a Pi. | You maintain the hardware, operating system, network exposure, database, backups, and physical availability. |
| Linux VPS | Internet reachability and provider-managed physical infrastructure. | You still maintain Cells, its database, configuration, updates, access controls, and independent backups; storage and resource limits depend on the VPS plan. |
Choose the platform based on where the files must be available, how much downtime you can tolerate, and who will maintain the operating system and backups. Remote access is not automatically safer on a VPS or more dangerous on a Pi; the firewall, TLS, account security, patching, and recovery process determine the practical risk.
Independent reader supportYour contribution helps us test, update, and keep practical guides available for everyone.Harden the installation before sharing real files
- Run Cells as the dedicated service account and remove unnecessary root privileges.
- Use HTTPS for every user-facing endpoint and redirect or block plain HTTP where your topology permits.
- Set the public external URL before enrolling desktop or mobile clients.
- Open only the web and, if applicable, synchronization ports required by the deployment.
- Use strong administrator and database credentials, and restrict database access to the Cells host or container network.
- Apply filesystem permissions so that only the service account and authorized administrators can read the Cells directory and backups.
- Raise the open-file limit above 2,048; use 8,192 as the production target recommended by the requirements guidance.
- Monitor disk capacity, database health, service availability, and backup completion.
- Keep independent backups and periodically perform a restoration exercise.
Verify the service after installation
- Open the configured HTTPS URL from a client network, not only from the server itself.
- Log in as the administrator and create a non-administrative test user.
- Upload and download a file large enough to exercise the intended storage path.
- Share a test folder with the required permissions and confirm that the recipient can perform only the allowed actions.
- If desktop or mobile access is required, complete an OAuth login from the client and confirm synchronization. Test this through the same public hostname users will use.
- Restart the container or service and confirm that configuration, users, and files remain present.
- Inspect the logs and confirm that the backup job can read the persistent directory and database.
Troubleshoot common failures
The browser cannot connect
Confirm that Cells is running, that the bind address is reachable from the client, and that the firewall allows the configured port. With Docker, verify that the container is using the intended network mode and that the host directory is mounted. A service bound only to localhost will not be reachable through a public interface.
Login or OAuth returns HTTP 403
Check the server clock first; Pydio identifies incorrect date and time as a cause of authentication failures. Then verify that the configured external URL exactly matches the HTTPS hostname users and clients are using. Check proxy forwarding and certificate validity if TLS terminates before Cells.
Best Value
- High-Speed Data Transmission: The D4-320 hard drive enclosure (a DAS, NOT a NAS) utilizes the USB 3.2 Gen2 protocol, achieving high-speed data transmission of up to 10Gbps. When equipped with four hard drives, the actual read/write speed can reach up to 1,016 MB/s (combined read/write with four SATA III HDDs of 8TB each). With just one SSD installed, the read speed effortlessly reaches 510 MB/s (SATA III 1TB SSD). The D4-320 supports a single HDD up to 30TB, with a total capacity of 120TB, and is compatible with various hard drives, including 3.5-inch SATA hard drives, 2.5-inch SATA hard drives, and 2.5-inch SATA SSDs
- Plug-and-Play Compatibility: The D4-320 USB storage supports 4 individual disks (NO RAID function), and is plug-and-play, eliminating the need for drivers. It is highly compatible with MAC, Windows, and Linux operating systems. The USB Type-C interface supports various computer interfaces, including USB 3.0, USB 3.1, USB 3.2, Thunderbolt 3, and Thunderbolt 4
- Hot Swappable Convenience: The D4-320 HDD enclosure supports hot swapping, allowing users to replace hard disks without powering off the device. This feature enhances convenience and efficiency in data transfer processes
- Tool-Free Hard Drive Management: Featuring a tool-free hard drive tray design, the D4-320 external HDD enclosure enables easy installation and removal of hard drives without requiring additional tools. Furthermore, the D4-320 incorporates TerraMaster's unique Push-lock design, automatically securing the hard drive tray upon insertion, preventing the hard drive from falling out or disconnecting
- Efficient Heat Dissipation and Quieter Operation: The D4-320 direct attached storage incorporates an intelligent temperature-controlled fan for optimal heat dissipation. Additionally, specialized sound-absorbing panels and vibration damping measures contribute to a quieter operation, with noise levels reduced by up to 50% compared to the previous generation. In standby mode, the noise level drops below 21 dB(A), creating a remarkably quiet user environment
Files or settings disappear after a container change
Inspect the container’s volume mapping and confirm that the original host directory is mounted at /var/cells. The persistent directory contains configuration and service information as well as data. Starting a replacement container without that mount creates an empty application state.
What’s actually slowing this PC down?
Pick the symptom - the matching free tool is one click away.
Synchronization fails while the web interface works
Review the TLS-terminating proxy configuration and expose the additional gRPC port required for Cells Sync. Confirm that the client uses the public external URL and that the firewall permits the synchronization path. A web-only proxy rule is not sufficient for a gRPC-dependent client.
The service stops under load
Check memory, CPU, disk space, and the open-file limit before changing application settings. The general recommendation is at least two cores and 4 GB of RAM, while Enterprise requires four cores and 8 GB. On a Pi, move to faster, more reliable storage or a larger host when the workload exceeds the platform’s headroom.
Find diagnostic information
For a Docker deployment, inspect the container output and the mounted log directory. The documented log location under the persistent layout is /var/cells/logs. For a native service managed by systemd, inspect the systemd journal together with the Cells logs. Record the error, timestamp, client, and operation before changing configuration so that you can correlate failures with restarts or proxy changes.
A practical deployment decision
Use Docker when you want a repeatable application boundary and are comfortable managing a mounted data directory, database, and container lifecycle. Use the binary when direct host integration and conventional service management are more important than container isolation. Choose a Raspberry Pi only for a small, carefully backed-up installation; use a better-provisioned server or VPS when availability, concurrent access, or storage growth matters.
Do these 3 things before closing this tab:
1Clear out junk files and repair common Windows errors2Fix the driver behind crashes, sound loss and screen glitches3Repair Windows errors before they cause bigger problemsWhichever route you select, the reliable pattern is the same: meet the CPU, memory, SSD, database, and file-limit requirements; run under a dedicated account; configure HTTPS and the correct external URL; persist /var/cells; expose only necessary ports; and prove that both the service and its backups survive a restart and a restore.
Quick Recap
Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.

