Edit history

Earlier versions of Per-user third-party media storage solution, newest first.

Current version | Edited by Rex
Changes
* The docker container can integrate with other remote file servers/protocols, including S3 buckets, FTP/FTPS/SFTP, SMB, Webdav, etc. and act as a broker to other storage solutions rather than a database, in the case of huge dataRemoved: ### ChecksRemoved: Removed: - ☑ I searched for existing discussions and didn't find a duplicate.Removed:
Show

Per-user third-party media storage solution

Problem

When you send a piece of media, it has an expiry date, which for my friends, is a deal-breaker when moving to this application. I understand that it's for saving storage space and is an essential part of the early development of this application, but there should be another option for uploading files with an indefinite lifetime.

Proposed solution

Implement an option (in user settings) where the client can automatically upload to an alternative media bucket (self-hosted, perhaps another application for Fluxer) and send a link (or other embed) in place of native file hosting. Then only a file mirror should need to be hosted, so no server space would be used in serving the content.

Notes

Process

1) A user types a message and adds an attachment 2) When the attachment is sent, if the client has a custom configured media bucket, then their app makes a request to their personal backend 3) A public media link is returned from the personal backend, which is embedded in the message as a special type of file (or just as an embedded link)

Proposed MVP

A simple Docker container that, when run, serves as an alternative media bucket for Fluxer. A user then connects it to their Fluxer account, so files are uploaded there, instead of uploading to the main Fluxer servers. When other users load the sent embed/file, a request is made to the author's alternative media bucket (likely through a mirror, to protect IP addresses) and displayed on the other user's client. I suppose an example link could be, if I hosted an instance of this hypothetical application:
https://fluxer.lexifur.me/media/1474100806723788885/128a2215-1ba3-4236-8dfd-068a357c43b3.mp4
^^^^^   ^^^^^^^^^^^^^^^^^       ^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
 TLS   media bucket domain         fluxer user id         randomly generated media UUID

User requirements

  • Some amount of actual storage
  • A self-hosted, dedicated server with Docker
  • A custom domain
  • SSL/TLS for their domain

Expansion

  • Multiple users can join an alternative media bucket, added via an Oauth integration
  • Servers/guilds can specify their own alternative media bucket, where media is stored for any user sending files within
  • The docker container can integrate with other remote file servers/protocols, including S3 buckets, FTP/FTPS/SFTP, SMB, Webdav, etc. and act as a broker to other storage solutions rather than a database, in the case of huge data
Original by Rex
Show

Per-user third-party media storage solution

Problem

When you send a piece of media, it has an expiry date, which for my friends, is a deal-breaker when moving to this application. I understand that it's for saving storage space and is an essential part of the early development of this application, but there should be another option for uploading files with an indefinite lifetime.

Proposed solution

Implement an option (in user settings) where the client can automatically upload to an alternative media bucket (self-hosted, perhaps another application for Fluxer) and send a link (or other embed) in place of native file hosting. Then only a file mirror should need to be hosted, so no server space would be used in serving the content.

Notes

Process

1) A user types a message and adds an attachment 2) When the attachment is sent, if the client has a custom configured media bucket, then their app makes a request to their personal backend 3) A public media link is returned from the personal backend, which is embedded in the message as a special type of file (or just as an embedded link)

Proposed MVP

A simple Docker container that, when run, serves as an alternative media bucket for Fluxer. A user then connects it to their Fluxer account, so files are uploaded there, instead of uploading to the main Fluxer servers. When other users load the sent embed/file, a request is made to the author's alternative media bucket (likely through a mirror, to protect IP addresses) and displayed on the other user's client. I suppose an example link could be, if I hosted an instance of this hypothetical application:
https://fluxer.lexifur.me/media/1474100806723788885/128a2215-1ba3-4236-8dfd-068a357c43b3.mp4
^^^^^   ^^^^^^^^^^^^^^^^^       ^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
 TLS   media bucket domain         fluxer user id         randomly generated media UUID

User requirements

  • Some amount of actual storage
  • A self-hosted, dedicated server with Docker
  • A custom domain
  • SSL/TLS for their domain

Expansion

  • Multiple users can join an alternative media bucket, added via an Oauth integration
  • Servers/guilds can specify their own alternative media bucket, where media is stored for any user sending files within
  • The docker container can integrate with other remote file servers/protocols, including S3 buckets, FTP/FTPS/SFTP, SMB, Webdav, etc. and act as a broker to other storage solutions rather than a database, in the case of huge data
Checks
  • ☑ I searched for existing discussions and didn't find a duplicate.