selfhost.directory

The index of self-hostable projects — ranked, categorized and served with live updates.
Own your data and stop giving it to big tech.

HRCloud2 logo

Self-host HRCloud2

v3.0

Self-hosted cloud drive with file conversion and OCR

ReleaseOpen SourceGPL-3.0
Updated3 years ago
LanguagePHP
Setup difficultyAdvanced
Stars
218
CPU
Any 32-bit (x86) or 64-bit (x64) PC or RISC with a Debian-Linux based operating system (multi-core CPU recommended)
RAM
At least 512mb of RAM (1gb recommended)
Storage
At least 512mb of disk space for installation directory, at least 3gb for CloudLoc directory (1tb+ recommended)
Requires
Apache, ClamAV, Ffmpeg, ImageMagick, LibreOffice, MeshLab, MySQL, Pdftotext (poppler-utils), PHP, Python, RAR, Tesseract-ocr, Unoconv, Unrar
Install with Build from Source
HRCloud2 main interfaceHRCloud2 file management viewHRCloud2 app launcherHRCloud2 settings or admin panelHRCloud2 additional feature view

What is HRCloud2?

HRCloud2 is a comprehensive self-hosted cloud storage platform designed for home servers and personal use. It provides a web-based interface for file upload, download, sharing, and management with advanced features including file conversion between numerous formats (documents, images, audio, video, 3D models, archives), OCR on images and PDFs, media streaming with playlists, virus scanning via ClamAV, and a personal assistant (HRAI) that responds via text-to-speech. The platform includes an app launcher with built-in apps for notes, contacts, bookmarks, calculator, server monitoring, RSS feeds, 3D modeling, and more. It uses WordPress for user authentication but stores files in user-specific directories without a database. Installation requires a Debian-based Linux system (Ubuntu, Raspberry Pi) with Apache, MySQL, PHP, and many additional dependencies. The project is licensed under GPL-3.0 and last released v3.0 in November 2018.

Should you self-host HRCloud2?

HRCloud2 scores 42/100 on selfhost.directory (how scoring works) and ranks #11 of 11 in Cloud Storage. It has 218 GitHub stars.

There was no stable release in the past 12 months, so check the repository's recent activity before you rely on it.

Setup is advanced: plan for several services and some ongoing maintenance. It is GPL-3.0-licensed and written mostly in PHP.

Its closest alternative on selfhost.directory is FileRise (59/100, 1 023 stars). It scores higher overall, so compare the two before you pick. See HRCloud2 vs FileRise side by side.

Features

  • App launcher
  • Archive management
  • Automatic Updates
  • Backup system
  • Desktop client builder
  • File Conversion
  • File sharing
  • File storage and management
  • Image Editing
  • Media streaming
  • OCR (optical character recognition)
  • Personal assistant (HRAI)
  • Remote command execution
  • Server monitoring
  • Virus Scanning

HRCloud2 README

How to install HRCloud2

Install HRCloud2 with Build from Source

-----MINIMUM REQUIREMENTS----- HRCloud2 requires at least a Raspberri Pi Model B+ or greater. HRCloud2 should run on any x86 or x64 based PC. HRCloud2 requires a Debian Linux-based operating system w/3rd party audio license.

-----PREFACE----- For this guide, it is assumed that the user is installing HRCloud2 on a PC which meets the above conditions. This guide will walk a new user through the installation of HRCloud2 on a freshly installed version of Lubuntu 16.04 LTS with no pre-existing dependencies.

For a walkthrough of installing a Ubuntu distro, visit..... http://www.ubuntu.com/download/desktop/install-ubuntu-desktop

IMPORTANT NOTE: During this guide we will be setting-up a fully functional, yet somewhat customized, LAMP stack including linux, Apache2.4, MySQL, and PHP8.0. If you DO NOT want to have a LAMP stack installed on your local machine DO NOT install this software. This software was designed to be run on a dedicated server setup for NAS duties.

In the abscence of required dependencies, HRCloud2 will make every attempt to complete a user-suppied operation while logging errors every step of the way. Administrators are responsible for monitoring and maintaining the dependencies of their servers.

-----STEP 1 - INSTALL APACHE 2.4----- -sudo apt-get update -sudo apt-get install apache2 -sudo apt-get install curl

-----STEP 2 - INSTALL MYSQL------ -sudo apt-get install mysql-server -sudo apt-get install mysql-client -sudo mysql_secure_installation DO NOT ENABLE PASSWORD STRENGTH MODULE -sudo mysql -u root -p -CREATE DATABASE database1; -exit WRITE DOWN THE MYSQL ROOT PASSWORD AND DATABASE NAME!!!

-----STEP 3 - INSTALL FEATHERPAD, LIBREOFFICE, PHP7 & PLUGINS----- -sudo apt-get install featherpad && sudo apt-get install libreoffice-common && sudo apt-get install libreoffice-java-common && sudo apt-get install php libapache2-mod-php php-mysql && sudo apt-get install php-all-dev YOU MAY NEED TO CHANGE THE PHP VERSIONS BELOW DEPENDING ON YOUR UBUNTU/PHP VERSION -sudo apt-get install php8.0-zip && sudo apt-get install php8.0-gd && sudo apt-get install php-curl EDIT THE "php.ini" FILE LOCATED IN "/etc/php/8.0/apache2/php.ini" -sudo featherpad /etc/php/8.0/apache2/php.ini SEARCH FOR AND MODIFY THE FOLLOWING VALUES CAREFULLY max_execution_time = 90 max_input_time = 90 memory_limit = 512M ;Use 256 - 384M for Raspberry Pis display_errors = On ;Leave display errors = Off if you're not debugging HRCloud2 youself post_max_size = 3000M upload_max_filesize = 3000M max_file_uploads = 100 zlib.output_compression = On SAVE THE MODIFIED "php.ini" FILE AND EXIT FEATHERPAD -sudo service apache2 restart

-----STEP 4 - INSTALL BASIC FEATURE DEPENDENCIES----- -sudo apt-get install clamav && sudo apt-get install unoconv && sudo apt-get install default-jre -sudo chown -R www-data:www-data /var/www -sudo featherpad /etc/rc.local ADD THE FOLLOWING LINE TO THE "rc.local" FILE ABOVE THE "exit 0" LINE /usr/bin/soffice --headless --accept="socket,host=127.0.0.1,port=$soffice_port;urp;" --nofirststartwizard & **IF YOU DO NOT HAVE AN "rc.local" FILE, OR IF THE FILE IS BL

Requires manual installation of LAMP stack and 20+ dependencies on Debian-based Linux

How to configure HRCloud2

  • Accept_GPLv3_OpenSource_License1Must be set to '1' to accept the GPLv3 license before running HRCloud2

    Must be set to '1' to accept the GPLv3 license before running HRCloud2

    values: 0 or 1

  • ApacheGroupwww-dataGroup Apache runs as

    Group Apache runs as

    values: System group

  • ApacheUserwww-dataUser Apache runs as

    User Apache runs as

    values: System user

  • BackupLoc/testCloudBackupLocation for backup files (MUST be customized)

    Location for backup files (MUST be customized)

    values: Any valid path with www-data permissions

  • CloudLoc/testCloudLocation for permanent user cloud files (MUST be customized)

    Location for permanent user cloud files (MUST be customized)

    values: Any valid path with www-data permissions

  • CLPerms0755Permissions for Cloud Location

    Permissions for Cloud Location

    values: Octal permissions

  • defaultColorScheme1Default color scheme

    Default color scheme

    values: Scheme number

  • defaultFontHelveticaDefault font for GUI elements

    Default font for GUI elements

    values: Any font name

  • defaultNicknameCommanderDefault name HRAI uses to address users

    Default name HRAI uses to address users

    values: Any string

  • defaultShowHRAI1Show HRAI on most pages by default

    Show HRAI on most pages by default

    values: 0 or 1

  • defaultTimezoneAmerica/New_YorkDefault timezone for users who haven't set their own

    Default timezone for users who haven't set their own

    values: Any valid PHP timezone

  • EnableBackups1Enable or disable backup features

    Enable or disable backup features

    values: 0 or 1

  • EnableMaintenanceMode0Disable HRCloud2 for maintenance

    Disable HRCloud2 for maintenance

    values: 0 or 1

  • HighPerformanceAV1Enable multi-threaded virus scanning

    Enable multi-threaded virus scanning

    values: 0 or 1

  • ILPerms0755Permissions for Installation Location

    Permissions for Installation Location

    values: Octal permissions

  • InstLoc/var/www/html/HRProprietary/HRCloud2Subfolder where HRCloud2 is installed

    Subfolder where HRCloud2 is installed

    values: Any valid path

  • PersistentAV1Enable persistent virus scanning that retries failed operations

    Enable persistent virus scanning that retries failed operations

    values: 0 or 1

  • Saltssecrets-so-fake-my-brain-hurtsRandom string used to obfuscate functionality, must be kept secret

    Random string used to obfuscate functionality, must be kept secret

    values: Any random string

  • ServerRootDir/var/www/htmlRoot of web server directory

    Root of web server directory

    values: Any valid path

  • ThoroughAV1Enable deep scanning of entire files vs descriptors only

    Enable deep scanning of entire files vs descriptors only

    values: 0 or 1

  • URLhttp://localhostExternally or internally accessible domain or IP for this installation

    Externally or internally accessible domain or IP for this installation

    values: Any valid URL

  • VirusScan1Enable automatic virus scanning during file operations (requires ClamAV)

    Enable automatic virus scanning during file operations (requires ClamAV)

    values: 0 or 1

HRCloud2 releases & version history

FAQ

Can my friends store data on my HRCloud2 server?

Yes, you can create WordPress accounts for friends and they'll get their own segregated cloud drive with separate logs and settings.

Does HRCloud2 connect to third-party servers?

HRCloud2 only connects to ClamAV for virus definitions and GitHub for updates. It never connects to any other external servers.

How does HRCloud2 help me access my data from anywhere?

When set up with port forwarding, static NAT, or reverse proxying, you can access your cloud from any browser using your domain or public IP.

What kind of computer should I install HRCloud2 onto?

A stationary computer that doesn't move. Compatible with ARM or x86/x64 systems capable of running all dependencies. Raspberry Pi Model B+ or greater works but multi-core is recommended.

What security features does HRCloud2 have?

HRCloud2 has extensive security features including minimal database usage, ClamAV integration, input sanitization, WordPress authentication, document-root protection, same-origin enforcement, salted hashing, and non-hosted user files.

What does HRCloud2 do to my computer?

HRCloud2 turns your computer into a fully-featured web server. It requires a stationary server running 24/7 for the best experience.

What is HRCloud2 similar to?

HRCloud2 is similar to a combination of Google Drive, ownCloud, Seafile, and AudioStreamer with added file conversion, OCR, server monitoring, and app launching capabilities.

More in File Conversion

Rate this project

Click to rate — no account needed.

0 comments

Posting as guest
Loading comments…