Can you have two Tigris buckets in an app? - Tigris
Can you have two Tigris buckets in an app?
If I already have one bucket, my-app-bucket-1, in an app, then:
fly --app my-app storage create --name my-app-bucket-2
returns
Error: A Tigris project named my-app-bucket-1 already exists for app my-app
If I can’t have two buckets in the same Fly app, then would there be any problems/conflict with connecting both TigrisFS (for non-database files) and Litestream (for a SQLite database that’s at a different local path than the one mounted to TigrisFS) to the same bucket? Would they automatically use differently named objects within the bucket and stay out of each other’s way?
TigrisFS | Tigris Object Storage Documentation
For AI workloads, most runtimes assume data is accessible via a filesystem.
Litestream is an open-source, real-time streaming replication tool that lets you safely run SQLite applications on a single node.
Solution
TigrisFS mainly makes the Tigris bucket available as a local mount on your machine. It wouldn’t interfere in any way. Of course, if you modify the files in the directory that Litestream is configured to use, then that would be a problem. So make sure Litestream is configured at a different path s3://BUCKETNAME/PATHNAME and the path within the bucket that you will use for non-database files are different.
I’m still learning about Litestream, and it looks like it supports different replica types, not just S3. For example, one possibility might be to replicate to a local path that’s within the TigrisFS mount, thereby ensuring that only the TigrisFS process communicates with the Tigris bucket.
The YAML configuration file provides a way to list databases and replicas that Litestream should manage. In addition, there are global variables that can be applied to all replicas.
The default path for the configuration file is /etc/litestream.yml.
Variable expansion By default, Litestream will perform environment variable expansion within the ...