2 months ago
We've heard you: many of you have asked for Object Storage on Railway.
We're now exploring adding object storage, and we'd love your input before we build.
- What would you use object storage for on Railway?
- How do you handle it today, and what frustrates you about that process? What do you like about it?
- What features matter most to you? (e.g. S3 API, versioning, TTL/lifecycle, public vs private files, CDN)
Open to any other thoughts, ideas and input you have!
0 Threads mention this feature
44 Replies
2 months ago
I’d definitely use object storage on Railway for user-generated content and media assets (images, docs, videos, backups). Today I usually wire up S3 or Cloudflare R2 alongside Railway deployments, which works but adds extra complexity in setup, permissions, and networking. It feels like a step outside the otherwise smooth Railway developer workflow.
The features that matter most for me:
S3-compatible API so it’s easy to plug into existing SDKs
Support for multipart uploads to handle large files reliably
Granular access controls (public, private, signed URLs)
Lifecycle policies for things like auto-expiry
CDN edge delivery baked in for global performance
What I’d love is the "Railway way" of making it feel native: one-click provisioning, easy environment variable injection, and clear observability (storage used, bandwidth, request counts). That’d save me from juggling multiple dashboards and credentials.
2 months ago
Amazing!
For me, being compatible with aws-sdk is the most important thing, being able to just change the endpoint like when using CF R2 and everything working as intended without extensive refactoring.
2 months ago
Wow, this would be awesome! Something price competitive with Interserver or Backblaze B2. Primary use would be for backing up my home server. Secondary reason would be what @yo mentioned above. I was building an app that needed to store user uploaded images. Tried a few different solutions on Railway, but nothing that I liked due to the lack of object storage.
2 months ago
The brutal reality is that if it doesn't compete on price with S3 itself it will be tough to justify making the move. There's very little "feature wise" that I think I would need and just having the excellent Railway UX polish on it will probably not be good enough to justify any significant cost overhead.
2 months ago
I imagine a new 'service' that's a single bucket, same credentials tab as databases
Match S3 prices (get as close as possible to R2)
S3 compatibility (again, can use R2 as a baseline)
A way to configure how much GBs to keep cached (similar to how one can limit a service's cpu/mem)
A way to configure which regions should keep the cache or replicate the entire bucket
yo
I’d definitely use object storage on Railway for user-generated content and media assets (images, docs, videos, backups). Today I usually wire up S3 or Cloudflare R2 alongside Railway deployments, which works but adds extra complexity in setup, permissions, and networking. It feels like a step outside the otherwise smooth Railway developer workflow.The features that matter most for me:S3-compatible API so it’s easy to plug into existing SDKsSupport for multipart uploads to handle large files reliablyGranular access controls (public, private, signed URLs)Lifecycle policies for things like auto-expiryCDN edge delivery baked in for global performanceWhat I’d love is the "Railway way" of making it feel native: one-click provisioning, easy environment variable injection, and clear observability (storage used, bandwidth, request counts). That’d save me from juggling multiple dashboards and credentials.
2 months ago
Granular access controls (public, private)
Are you specifically referring to public and private files within the same bucket? Or just in general the ability to have public and private files? If within the same bucket, could you give an example where it's necessary for you?
2 months ago
Maybe take a look at Garage, could be a good fit, maybe able to use replicas to scale it too.
I would like a S3 compatible system, with cdn edge caching, user keys for buckets.
We would use it for S3 storage for media, pictures and picture transforms served via global CDN for CMS’s.
2 months ago
S3 API compat, CDN cache...SIMPLICITY...good UI/UX for managing it inline in the Railway environment (custom domain overlays (and internal endpoints like you've done elsewhere), simple default permissions rather than having to force everything to be "publicly viewable" if you have to manage it in the UI environment) and file management functions.
People are quite simply leaving AWS etc for layer 2 cloud solutions like Railway, Vercel etc because AWS has become so insanely cumbersome to manage all of the integrations, layers and layers of permissions, 50 steps to do basic things...take the time to really focus on the developer experience so we dont end up with just another AWS "feature sprawl" situation...and you'll be great!
2 months ago
I want to enable my hobby project to store images, documents, short videos that requires S3. I tried integrating with S3 compatible library. Would love to have something similar to database where is it is easy to setup, has standard s3 compatible interface and reasonably prized based on storage. Thanks for considering this feature. Definitely there is a need.
2 months ago
I would only care about price being better than DO or CF.
2 months ago
It would have to be better than S3 and/or R2.
Someone above said signed URLs, which I agree with.
Additionally, the pricing would at least have to be competitive.
a month ago
thinking about a photo gallery app, I'd love
File versioning, so I can edit and restore unedited versions of a photo
Events, so I can mirror the object state in my DB
A way to tell if the version of the file I have locally is the same one in storage, helpful when syncing to multiple devices
Batch create signed URLs (private photo gallery)
No egress fees

a month ago
I would care about:
- S3 compatibility
- Versioning
- Compatible with Cloudflare
- R2-esque TTL/lifecycle
a month ago
I would love this! I tried Minio on Railway (is that technically even allowed for production use?) but a "native" way to get object storage would be great!
S3 compatibility
Encryption
Versioning
Locking
Retention
The api compatibility and encryption possibility would be my personal selling point. Encryption is underrated to be able to save more sensitive data when a project asks for it. It would be nice to have a railway-provided-key (bucket encryption) or SSE-C (bring your own key, which is harder imo).


joggienl
I would love this! I tried Minio on Railway (is that technically even allowed for production use?) but a "native" way to get object storage would be great!S3 compatibilityEncryptionVersioningLockingRetentionThe api compatibility and encryption possibility would be my personal selling point. Encryption is underrated to be able to save more sensitive data when a project asks for it. It would be nice to have a railway-provided-key (bucket encryption) or SSE-C (bring your own key, which is harder imo).
a month ago
is that technically even allowed for production use?
Of course it is 
rtwalz
I would only care about price being better than DO or CF.
a month ago
price being better than DO or CF
Interesting comparison, DigitalOcean and Cloudflare have 2 different pricing models. Which one do you prefer?
lchin21
It would have to be better than S3 and/or R2.Someone above said signed URLs, which I agree with.Additionally, the pricing would at least have to be competitive.
a month ago
What specifically would you like to see better compared to S3 and R2? Would be interesting to hear what you dislike or find annoying about those existing offerings.
timomeh
is that technically even allowed for production use?Of course it is
a month ago
appologies, I did not use proper wording I suppose, I was referreing to the Minio license itself. I believe you need a specific license for it to run it for actual production usage but I have not checked that any further 
timomeh
What specifically would you like to see better compared to S3 and R2? Would be interesting to hear what you dislike or find annoying about those existing offerings.
a month ago
Most annoying with R2 is that either it is public or private, you cannot control access per object.
a month ago
Consider support for conditional requests (especially writes) based on ETag and/or modification date/time (eg. only perform the request if the object still matches the provided ETag).
a month ago
Just want to mention that there will be S3 compatibility, that is guaranteed.
a month ago
That’s epic @brody! Multipart upload support would be amazing, along with presigned URLs.
These two are most used by me across all my projects.
timomeh
price being better than DO or CFInteresting comparison, DigitalOcean and Cloudflare have 2 different pricing models. Which one do you prefer?
a month ago
For certain things, one can be better than the other. DO does not charge for API calls, while CF does. CF does not charge for bandwidth, while DO does. So bandwidth-intense, small number of files, I go with CF. If I have large number of files and little bandwidth, DO wins.
a month ago
- What would you use object storage for on Railway?
Right now I have to store number of static assets (HTML, images) and there is no easy way for me to do it via Railway.
- How do you handle it today, and what frustrates you about that process? What do you like about it?
What I currently use is AWS S3 + AWS amplify which allow me to drag-n-drop my files into S3 and make them available in less than 5 minutes.
What I don't like is that I have to do a lot of click-ops here and there to upload files for the first time/update them later. There is a way to automate it but I'm okay doing it manually for my case.
- What features matter most to you? (e.g. S3 API, versioning, TTL/lifecycle, public vs private files, CDN)
Easy way to host static assets.
For me personally S3 API and TTL/lifecycle matter less than having CDN and versioning
a month ago
Hi Railway team and thanks for you hard work!
In addition to all of the wonderful features mentioned by the folks in this thread, I would really love to see a local-first approach that allows us to build with Railway storage locally. I would like to see railway storage packaged up as a docker image so we can build storage features into our apps and test locally. DX is not to be dismissed as a key factor for adoption here.
From a more high-level perspective, I believe you would be wise to stick to your primitives of "services, with volumes" that took you to another level with databases. I remember when databases were changed from a specific offering into templates on top of the "services and volumes" primitives. It was awe-inspiring reading the blogs from those days in late 2022. And part of what I love so much about Railway is that I can work local-first, building my applications in monorepos, with or without Docker, and trust that they'll run in the Railway environment very similarly to how they run on my machine. And in order to achieve that experience building apps with S3-compatible storage, we'll need to run the storage service locally.
And I believe for that reason, the Functions primitive is just a fun novelty item, or an easy cloud-only tool to do a bit of scripting, but not a truly powerful technology like what you've done so far with "services and volumes". It all comes down to that, and the sophistication of your control plane, DNS, build layer, scheduler, scaling of replicas, how you're managing machines in the data centers --- you guys are eminent wizards of this stuff and I'm constantly ecstatic to be participating in your platform.
Anyway, just food for thought, consider developing your object storage in a way that hooks into your platform infrastructure modularly, can be packaged up in a docker image, and let us run it as just another template with a volume mounted. AND get the fees competitive
Love your work and thanks again!
a month ago
TBH, the only thing that is missing on my side is a GUI, or a script, for the migration
25 days ago
Are there any official documentation for accessing images from the bucket for public viewing? The buckets are private by default, and it is recommended to deploy a public proxy. Does it support the presigned URL mechanism for public access? Are there any detailed or thorough docs available on this?
aditya-devalalikar
Are there any official documentation for accessing images from the bucket for public viewing? The buckets are private by default, and it is recommended to deploy a public proxy. Does it support the presigned URL mechanism for public access? Are there any detailed or thorough docs available on this?
24 days ago
Docs will be coming in the future before we GA buckets. Presigned URLs are supported. For public access without a presigned URL, you can use a public proxy like imgproxy (which has S3 support) or https://railway.com/deploy/s3-proxy. Template support for Buckets will also be coming to make deploying these usecases even easier.
24 days ago
I made a POC so I could understand how this all works. https://github.com/knollfear/ImageUploader. I am able to deploy this to railway direct from github and it appears to handle the uploading directly to the bucket via a signed URL and a POST request. It can also displaying the image with a signed URL.
22 days ago
Right it's difficult to find from where to create a bucket. Ideally would be better have that option in the create modal itself.
ajaykarthikr
Right it's difficult to find from where to create a bucket. Ideally would be better have that option in the create modal itself.
21 days ago
We'll add it to the create modal and the command palette latest when Buckets go into GA
19 days ago
I'm looking forward to this being GA so I can make some templates for fully contained projects! I'd love to be able to have a file system-type view to see what files are in the bucket from the project canvas. Similar to how I can see what's in a database in a table, it would be great to know what's in the bucket at any given time. This includes the ability to delete files as well.
I've seen a few mentions about a CDN, so I'll cast another vote for that. It would really put everything I need in one project and simplify future workflows while minimizing complexity.
16 days ago
S3 compatibility
CDN
evhaus
The brutal reality is that if it doesn't compete on price with S3 itself it will be tough to justify making the move. There's very little "feature wise" that I think I would need and just having the excellent Railway UX polish on it will probably not be good enough to justify any significant cost overhead.
14 days ago
Not everyone is concerned about price, price, price.
For applications and sites that are big users of storage - 100% absolutely it plays a major role.
However, for less resource intensive apps. Many people want just a one click, application where everything is all under one roof, fast and works.
Railway likely will never compete with AWS or Cloudflare unless they make that a major mission to offer that service functionality and all the growing pains that would come with it.
But for the average DEV builder, they will likely just want something that offers backups , is one click deploy, has a CDN functionality and common framework stacks. If it costs 5-10 cents more, they are likely not going to care that much.
version3034
Not everyone is concerned about price, price, price. For applications and sites that are big users of storage - 100% absolutely it plays a major role. However, for less resource intensive apps. Many people want just a one click, application where everything is all under one roof, fast and works. Railway likely will never compete with AWS or Cloudflare unless they make that a major mission to offer that service functionality and all the growing pains that would come with it.But for the average DEV builder, they will likely just want something that offers backups , is one click deploy, has a CDN functionality and common framework stacks. If it costs 5-10 cents more, they are likely not going to care that much.
5 days ago
Yeah, it seems like the hobby users are concerned about price
2 days ago
I was going to move from Cloudflare R2 to Railway's Object Storage but I need some of my files to be publicly accessible. What I liked about Cloudflare R2 is that there is no ingress cost for that and the users can load files directly from Cloudflare. From the blog post in Railway I read that if I want to make the files publicly accessible, I have to add a public proxy to load the files. My concern is that this public proxy might incur ingress and bandwidth cost.
Can you please help me clarify these?
prodoxx
I was going to move from Cloudflare R2 to Railway's Object Storage but I need some of my files to be publicly accessible. What I liked about Cloudflare R2 is that there is no ingress cost for that and the users can load files directly from Cloudflare. From the blog post in Railway I read that if I want to make the files publicly accessible, I have to add a public proxy to load the files. My concern is that this public proxy might incur ingress and bandwidth cost. Can you please help me clarify these?
a day ago
I assume you mean egress, not ingress. When you add a proxy service to make files public, you have to pay for the public network egress of the proxy service, yes. You could consider adding a CDN cache in front of your proxy service (for example Cloudflare's free CDN cache), to reduce egress cost by having more cache hits.
timomeh
I assume you mean egress, not ingress. When you add a proxy service to make files public, you have to pay for the public network egress of the proxy service, yes. You could consider adding a CDN cache in front of your proxy service (for example Cloudflare's free CDN cache), to reduce egress cost by having more cache hits.
a day ago
Sorry, I meant egress. I'm using Cloudflare R2 right now which provides free egress + CDN for my object storage. Can you please help understand what benefits I'll have in moving my files from Cloudflare R2 to Railway's Object Storage besides the fact that they will be in the same network? Sorry, for the noob questions.
prodoxx
Sorry, I meant egress. I'm using Cloudflare R2 right now which provides free egress + CDN for my object storage. Can you please help understand what benefits I'll have in moving my files from Cloudflare R2 to Railway's Object Storage besides the fact that they will be in the same network? Sorry, for the noob questions.
a day ago
It's about allowing you to ship faster, for example: you can use bucket credentials as service variables instead of copy-pasting them from Cloudflare's dashboard; we automatically create a separate bucket and credentials per environment; you don't have to add your credit card to another provider and configure yet another usage limit.
timomeh
It's about allowing you to ship faster, for example: you can use bucket credentials as service variables instead of copy-pasting them from Cloudflare's dashboard; we automatically create a separate bucket and credentials per environment; you don't have to add your credit card to another provider and configure yet another usage limit.
a day ago
Could you please confirm if there are any upcoming pricing plans for storage buckets, and what potential charges (such as storage size, read/write operations, or data transfer) we should expect?
aditya-devalalikar
Could you please confirm if there are any upcoming pricing plans for storage buckets, and what potential charges (such as storage size, read/write operations, or data transfer) we should expect?
a day ago
Adding pricing for buckets is planned for this quarter, and we'll announce the pricing once we made a final decision what it will be. I know that pricing is an important consideration to make before moving to Railway's buckets for your production projects.
3 hours ago
Is it true that buckets with S3 support is already a thing? Maybe I'm missing something here but when I'm in a project I'm able to create a bucket. but not when i click on create in the top right.
bramsuurdje
Is it true that buckets with S3 support is already a thing? Maybe I'm missing something here but when I'm in a project I'm able to create a bucket. but not when i click on create in the top right.
2 hours ago
Yes, you're right. S3 Buckets are already a thing. Right now you can only create a bucket in the context menu when you right-click on the project canvas. They are right now not visible in the Command Palette or the "+ Create" button. But we'll finish the work on it this quarter





