-
Notifications
You must be signed in to change notification settings - Fork 1.7k
byoc doc page #6582
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Open
carlosabadia
wants to merge
2
commits into
main
Choose a base branch
from
carlos/add-cloud-deploy-overview
base: main
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
+59
−0
Open
byoc doc page #6582
Changes from all commits
Commits
Show all changes
2 commits
Select commit
Hold shift + click to select a range
File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,58 @@ | ||
| # Bring Your Own Cloud | ||
|
|
||
| Bring Your Own Cloud (BYOC) lets you deploy Reflex apps to your own **AWS**, **GCP**, or **Azure** account with the same `reflex cloud deploy` command you already use. Everything runs inside your account: the build runs on your cloud's builders, the image is pushed to your internal registry, and the app runs on your cloud's managed runtime. Reflex never holds standing credentials into your account, and nothing about the app or its data leaves your perimeter. | ||
|
|
||
| ```md alert info | ||
| # Enterprise tier only. | ||
|
|
||
| BYOC is part of the **Enterprise tier** of Reflex Cloud. Contact [sales@reflex.dev](mailto:sales@reflex.dev) to upgrade. | ||
| ``` | ||
|
|
||
| ## Why BYOC | ||
|
|
||
| Reflex Cloud takes you from a Python file to a live app in one command, but that app runs on Reflex's infrastructure — a non-starter for teams whose cloud is fixed by security review, procurement, or data-residency policy. If the deployment target isn't approved, the app doesn't ship. | ||
|
|
||
| The alternative is to build the deploy yourself on Cloud Run, ECS, or Container Apps: a Dockerfile, a build pipeline, a registry, runtime config, infrastructure-as-code, and ongoing maintenance. That's its own engineering project, and most of it has nothing to do with your app. | ||
|
|
||
| BYOC keeps the Reflex Cloud workflow your team already uses — app lifecycle, autoscaling, environment variables, and the deploy CLI all behave the way they always have. The only thing that changes is where the container ends up running. | ||
|
|
||
| ## Deploy targets | ||
|
|
||
| The same `reflex cloud deploy` command works against each cloud with a single flag: | ||
|
|
||
| ```bash | ||
| reflex cloud deploy --aws | ||
| reflex cloud deploy --gcp | ||
| reflex cloud deploy --azure | ||
| ``` | ||
|
|
||
| | Cloud | Flag | Managed runtime | | ||
| | --- | --- | --- | | ||
| | AWS | `--aws` | ECS | | ||
| | GCP | `--gcp` | Cloud Run | | ||
| | Azure | `--azure` | Container Apps | | ||
|
|
||
| ## How the deploy command works | ||
|
|
||
| Running `reflex cloud deploy --<cloud>` kicks off a short interactive flow: | ||
|
|
||
| 1. **Authenticate.** The CLI checks that your cloud's own CLI (`aws`, `gcloud`, or `az`) is installed and that you're logged in, and walks you through `aws configure`, `gcloud auth login`, or `az login` if you're not. From there everything runs under your credentials. | ||
| 2. **Configure.** It pulls the latest Reflex Cloud config for your app and prompts you for any flags it needs. | ||
| 3. **Review.** Before anything runs, it prints the exact build and deploy commands it's about to execute and asks for approval. | ||
| 4. **Deploy.** On approval, it builds the container image with your cloud's native builders, pushes it to your internal artifact registry, and deploys the app to the managed runtime. | ||
|
|
||
| The final output is the URL of the live app, running in your own account. The whole flow takes about three minutes the first time, and under a minute on subsequent deploys. | ||
|
|
||
| ## What's in scope today | ||
|
|
||
| BYOC is generally available on AWS, GCP, and Azure for Reflex Enterprise customers. It supports: | ||
|
|
||
| - Reflex apps on Cloud Run, ECS, and Container Apps | ||
| - Authentication through your existing cloud CLI | ||
| - The standard set of Reflex Cloud configuration flags | ||
|
|
||
| ## Next steps | ||
|
|
||
| - For a detailed walkthrough of the GCP target — prerequisites, options, the security model, and troubleshooting — see [Deploy to GCP Cloud Run](/docs/hosting/deploy-to-gcp/). | ||
| - If you're on Reflex Enterprise, update the CLI and run `reflex cloud deploy --<cloud>`. | ||
| - If you're not, see [reflex.dev/pricing](https://reflex.dev/pricing/) for the comparison and a demo link. | ||
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Uh oh!
There was an error while loading. Please reload this page.