I've created a simple wrapper around ChatGPT for an internal audit at my company, and now they want it deployed company-wide. I don't have much experience with deployments, and I only recently learned what a Linux server is when my IT team asked if I could manage it. I'm looking for guidance on how to best host and deploy my app since I'll be responsible for managing it. My application is built with Python and FastAPI, sending PDFs to the OpenAI API for analysis, then displaying the results on a basic Streamlit interface. I need to process 2,000 to 4,000 6-10 page PDFs monthly at scale. I've only used Render for demos but now I'm feeling a bit lost. My outsourced IT team suggested a Linux box, which they say will take 10-14 days to set up. My company has around $90 million in ARR and 300 employees. I don't have formal software engineering experience and often have to ask for help with commands. Any help or advice would be greatly appreciated!
2 Answers
Where to start? First off, having to ask for commands like 'git add' and 'git push' is definitely a sign that you might want a more automated solution. If your IT team has a cloud environment, which most should, it might be easier to deploy it there. For your FastAPI app, if it’s primarily making requests to the OpenAI API, consider a serverless solution—it can save you headaches in the long run, especially if you're not managing hundreds of users. As for the timeline, it shouldn’t take 10-14 days to set up a server. If they mean a basic setup, it could be done within a day, especially when using ECS or similar services.
Honestly, 10-14 days for setting up a Linux box seems way too long. I used to spin up VMs in mere minutes back at Microsoft, and it’s the same at my current job. Given your needs, I'd recommend using a managed service like Azure App Service or AWS Elastic Beanstalk. They take care of a lot of the underlying infrastructure, so you won’t need to become a Linux whiz overnight—just upload your code and set up your environment variables. But be cautious—if the PDFs contain sensitive data, you'll need to ensure compliance and data security with your hosting choice.
Good point! Data sensitivity is crucial. I prefer managed services too, but I'm worried about how to secure sensitive data unless it’s on an internal VM.

Exactly! Setting up an EC2 instance should only take minutes, not days. For better scaling, a serverless setup with Lambda could be ideal, too—it's generally quicker and easier to manage.