Skip to main content
Storage • 2 mins read

Example: Nextcloud with Hippius S3

Nextcloud with Hippius S3

Use Hippius S3 as the primary storage backend for Nextcloud.

Prerequisites

Create the bucket before starting Nextcloud:

aws s3 mb s3://nextcloud-data --endpoint-url https://s3.hippius.com

Docker Compose

docker-compose.yml
services:
nextcloud:
image: nextcloud:latest
ports:
- "8080:80"
volumes:
- nextcloud_data:/var/www/html
environment:
- OBJECTSTORE_S3_BUCKET=nextcloud-data
- OBJECTSTORE_S3_KEY=YOUR_ACCESS_KEY
- OBJECTSTORE_S3_SECRET=YOUR_SECRET_KEY
- OBJECTSTORE_S3_HOST=s3.hippius.com
- OBJECTSTORE_S3_REGION=decentralized
- OBJECTSTORE_S3_PORT=443
- OBJECTSTORE_S3_SSL=true
- OBJECTSTORE_S3_USEPATH_STYLE=true

volumes:
nextcloud_data:

Start it up:

docker compose up -d

Then open http://localhost:8080, create an admin account, and select SQLite as the database. Nextcloud will automatically use Hippius S3 for all file storage.

use_path_style is required

Hippius S3 does not support virtual-hosted style addressing. OBJECTSTORE_S3_USEPATH_STYLE=true must be set or Nextcloud will fail to connect.

Verify

Upload a file through the Nextcloud UI, then confirm it landed in the bucket:

aws s3 ls s3://nextcloud-data/ --recursive --endpoint-url https://s3.hippius.com

Nextcloud stores objects with urn:oid: prefixes rather than original filenames — this is normal.

Other Self-Hosted Apps

The same pattern works with any self-hosted app that supports S3-compatible storage. Change the endpoint to s3.hippius.com, set path_style = true, and use your Hippius credentials.

Examples:

References