FastAPI Serve - FastAPI to the Cloud, Batteries Included!
Project description
FastAPI-Serve: FastAPI to the Cloud, Batteries Included! ☁️🔋🚀
Welcome to fastapi-serve, a framework designed to take the pain out of deploying your local FastAPI applications to the cloud. Built using our open-source framework Jina, fastapi-serve
offers out-of-the-box support for automated deployments on cloud.jina.ai
, our scalable and robust cloud platform. 🌩️
😍 Features
- 🌎 HTTPS: Auto-provisioned DNS and TLS certificates for your app.
- 🔗 Protocols: Full compatibility with HTTP, WebSocket, and GraphQL.
- ↕️ Scaling: Scale your app manuallly or let it auto-scale based on RPS, CPU, and Memory.
- 🗝️ Secrets: Secure handling of secrets and environment variables.
- 🎛️ Hardware: Tailor your deployment to suit specific needs.
- 🔒 Authorization: Built-in OAuth2.0 token-based security to secure your endpoints.
- 💾 App Storage: Persistent and secure network storage for your app data.
- 🔄 Blob Storage: Built-in support for seamless user file uploads and downloads.
- 🔎 Observability: Integrated access to logs, metrics, and traces.
- 📦 Containerization: Effortless containerization of your Python codebase with our integrated registry.
- 🛠️ Self-Hosting: Export your app for self-hosting with ease, including docker-compose and Kubernetes yamls.
💡 Getting Started
First, install the fastapi-serve
package using pip:
pip install fastapi-serve
Then, simply use the fastapi-serve
command to deploy your FastAPI application:
fastapi-serve deploy jcloud app:app
You'll get a URL to access your newly deployed application along with the Swagger UI.
📚 Documentation
We have a few examples to help you get acquainted with fastapi-serve
:
- 🚀 Deploy a Simple FastAPI Application
- 🗝️ Use Secrets for Redis-Powered Rate Limiting
- 🔒 Secure Your Endpoints with built-in OAuth2.0 Authorization
- 📁 Handle File Uploads and Downloads with built-in Blob Storage
- 🐳 Deployment with Custom Dockerfile (Coming Soon!)
- 🛠️ Export Your App for Self-Hosting with docker-compose / Kubernetes (Coming Soon!)
🖥️ fastapi-serve
CLI
fastapi-serve
comes with a simple CLI that allows you to deploy your FastAPI applications to the cloud with ease.
Description | Command |
---|---|
Deploy your app locally | fastapi-serve deploy local app:app |
Deploy your app on JCloud | fastapi-serve deploy jcloud app:app |
Update existing app on JCloud | fastapi-serve deploy jcloud app:app --app-id <app-id> |
Get app status on JCloud | fastapi-serve status <app-id> |
List all apps on JCloud | fastapi-serve list |
Remove app on JCloud | fastapi-serve remove <app-id> |
⚙️💰 Configuration and Pricing
Read our Configuration & Pricing Guide to learn more about the various configuration options available to you and the pricing model for fastapi-serve
.
💪 Support
If you encounter any problems or have questions, feel free to open an issue on the GitHub repository. You can also join our Discord to get help from our community members and the Jina team.
Our Cloud Platform 🌐
cloud.jina.ai
is our robust and scalable cloud platform designed to run your FastAPI applications with minimum hassle and maximum efficiency. With features like auto-scaling, integrated observability, and automated containerization, it provides a seamless and worry-free deployment experience.
fastapi-serve
is more than just a deployment tool, it's a bridge that connects your local development environment with our powerful cloud infrastructure. Start using fastapi-serve
today, and experience the joy of effortless deployments! 🎊
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.