Multi tenant applications

It’s still on the docket, but I don’t know where it is. The backend for it exists, but I don’t think it’s hooked up to the API yet. It’ll happen!

1 Like

You can put an app on a specific network-id (the org your app is on has a default network, but you can create others) with flyctl apps create --network.

Apps on their own network won’t be able to talk to apps on other networks. There’s no current bridging you can do from one network to another; our private network enforcement is very simple (which is why we trust it).

6 Likes

Wait…what? This is uber neat. When was this feature announced?

1 Like

I regret that I may have revealed its existence here, because I hate it. But it’s not going away (it’s useful with Fly Machines for large-scale multitenant stuff).

1 Like

Why do you hate it?

1 Like

How can this be done for when you’re creating an app via the machine Rest API?

You can pass a network param, there’s an example here: Running user code on Fly Machines · Fly Docs

3 Likes

Great to learn about custom private networks! Is there a way to limit the data transfer amount of a certain app? I feel like this would be useful for FaaS.

How do you specify a specific network ID for a Postgres Cluster? It is not provided as a mutation param in the GraphQL service.

I replaced the createPostgresCluster mutation with the createApp mutation followed by the createVolume mutation. This solves my issue.

1 Like