Home From Chaos to Cloud: Spinning Up FileCloud Like a Cyber Sorcerer
Post
Cancel

From Chaos to Cloud: Spinning Up FileCloud Like a Cyber Sorcerer

“When in doubt, docker ps it out.” – Ancient Hacker Proverb

It was a sunny Sunday—too peaceful, really. I needed something to break the monotony. That’s when I decided to summon the mighty beast of self-hosted file storage: FileCloud. But not just any setup—I wanted it Dockerized, clean-ish on every reboot, with storage rooted in my sacred /mnt/shared/cloud-server.

⚙️ Enter the Void: The First Invocation

I ran the FileCloud Docker container like a true sysadmin of the arcane:

1
2
3
4
5
6
7
8
9
sudo docker run --privileged -d \
  -p 443:443 -p 80:80 \
  -v fcdata:/opt/fileclouddata \
  -v dbdata:/var/lib/mongodb \
  -v solrdata:/opt/solrfcdata/var/solr \
  -v htmldata:/var/www/html \
  --name filecloud \
  filecloud/fileclouddocker:latest \
  /lib/systemd/systemd

Boom. The container spawned like a summoned daemon, bound to ports 80 and 443. FileCloud came alive… almost.

🤯 The Path of Pain: Storage Path Not Set

As the dashboard loaded, it greeted me with a cryptic complaint:

❌ Storage Path Not Set. Invalid Path.

I double-checked everything. My volumes were mounted, my paths were blessed with chmod 777, and yet FileCloud whispered: “Try again, mortal.”

Turns out FileCloud wanted a real path, not a Docker volume abstraction. The container needed to see /mnt/shared/cloud-server like a physical realm, not a volume spell.

🧙‍♂️ The Hackening: Binding Shared Storage

So I banished the old container to the nether realms:

1
2
sudo docker stop filecloud
sudo docker rm filecloud

Then I bound /mnt/shared/cloud-server directly to /opt/fileclouddata, where FileCloud likes to nap:

1
2
3
4
5
6
7
8
9
sudo docker run --privileged -d \
  -p 443:443 -p 80:80 \
  -v /mnt/shared/cloud-server:/opt/fileclouddata \
  -v dbdata:/var/lib/mongodb \
  -v solrdata:/opt/solrfcdata/var/solr \
  -v htmldata:/var/www/html \
  --name filecloud \
  filecloud/fileclouddocker:latest \
  /lib/systemd/systemd

I also gave ownership to the web server deities:

1
chown -R www-data:www-data /mnt/shared/cloud-server

Like magic, FileCloud accepted the offering. Files placed inside /mnt/shared/cloud-server started appearing in the UI like ghosts in the machine.

🔁 Summon and Banish: My Ritual Script

I needed a non-clean (persistent) way to start and stop the container. So I crafted the sacred incantations:

1
2
3
4
5
# Start the beast
sudo docker start filecloud

# Send it to slumber
sudo docker stop filecloud

No data loss. Just a clean nap and wake-up for the daemon. The volumes stay. My files remain untouched. Bliss.


🎉 Conclusion: I Tamed the Cloud

FileCloud now lives happily inside Docker, chilling with my shared mount point. If you’re trying the same and getting hit with “Storage path invalid”, don’t argue with the daemon. Just feed it the path it can see.

Pro tip: Volumes are cool, but mounted folders are real enough to please the cloud gods.

Happy hacking, and may your /mnt be ever mounted.

“Storage was a mess. Containers were chaos. But I came, I saw, I docker run‘d it.”

— ArenRedd


This post is licensed under CC BY 4.0 by the author.

How I Installed Kali NetHunter on My Android Without Rooting (And Lived to Tell the Tale)

HackStack Deep Dive: Passwords, Networks & Resources