Overview
Streamlit demo app
The bundled Streamlit demo app served on port 80 through an authenticating nginx proxy, showing the title, sidebar controls and an interactive line chart.
Streamlit demo app
Interactive controls
Interactive dataframe
This is a repackaged open source software product wherein additional charges apply for cloudimg support services.
Why This Image Over a Manual Install
Setting up Streamlit for production typically requires configuring a Python virtual environment, writing systemd unit files, hardening nginx as a reverse proxy with WebSocket upgrade headers, generating per-instance credentials, and partitioning storage - hours of work that is easy to get wrong. This AMI eliminates that entire process. You launch an instance and a secured, authenticated Streamlit app is serving on port 80 within minutes, ready for your team to replace the demo with their own Python code.
Application Stack
- Streamlit installed into a dedicated Python virtual environment under /opt/streamlit, run by an unprivileged service account
- Dedicated data disk holds the application directory (virtual environment and app script) so storage is independently resizable without rebuilding the instance
- systemd service starts the app on boot and restarts it automatically on failure
- nginx reverse proxy publishes the app on port 80 behind HTTP Basic authentication with full WebSocket upgrade support so the interactive UI renders instantly
Ready-to-Run Demo App
A polished multi-widget demo ships at /opt/streamlit/app.py featuring a title, sidebar controls, an interactive dataframe, and a chart driven by pandas and numpy. It demonstrates what a Streamlit app looks like out of the box and gives you a working example to learn from. Replace it with your own Python script and restart the service to go live.
Secure First Boot
On first boot a one-shot service generates a fresh admin password unique to that instance, writes it into the nginx credentials file, and stores the password in a root-only file. The Streamlit process binds to loopback only and is never exposed without authentication. No shared or default credentials ship in the image - eliminating shared-secret risk entirely.
Full WebSocket Support
Streamlit drives its interactive interface over a WebSocket. The bundled nginx proxy forwards the WebSocket upgrade and connection headers so the app loads and updates instantly behind authentication instead of hanging on a loading screen. A health endpoint is reachable for monitoring and load-balancer integration.
Use Cases
- Data science teams deploying model-evaluation dashboards for stakeholder review - upload a trained model, visualize predictions, and share a URL with decision-makers without provisioning front-end infrastructure
- Interactive analytics dashboards for business intelligence
- Machine learning model demos and internal tools
- Rapid prototyping of Python-powered web apps
- A self-hosted home for the Streamlit apps your team builds, ideal for small teams without dedicated DevOps resources
cloudimg Support
24/7 technical support by email and live chat. Our engineers help with deployment, deploying your own app, Python dependency management, TLS configuration, authentication customization, and performance tuning. Critical issues receive a one-hour average response time.
Getting Started
- Launch the AMI from AWS Marketplace on your preferred instance type
- Retrieve the generated admin password from the root-only file
- Access the demo app at your instance's public IP on port 80
- Replace /opt/streamlit/app.py with your own script, install dependencies into the virtual environment, and restart the service
For a detailed deployment walkthrough including TLS setup and custom authentication, contact cloudimg support.
All product and company names are trademarks or registered trademarks of their respective holders. Use of them does not imply any affiliation with or endorsement by them.
Highlights
- Launch a production-ready Streamlit app in minutes - no manual nginx, systemd, or WebSocket configuration required. The entire stack is preinstalled and serving an authenticated demo app on port 80 from first boot, eliminating hours of setup that is easy to misconfigure when done manually.
- Write plain Python to build interactive data and ML apps with widgets, charts, and dataframes. Your application directory lives on a dedicated, independently resizable data disk so you can scale storage without rebuilding the instance. Replace the bundled demo with your own script and restart one service to go live.
- Every instance generates a unique admin password on first boot stored in a root-only file - no shared or default credentials ever ship. The Streamlit process binds to loopback only, ensuring zero unauthenticated exposure. Backed by 24/7 cloudimg support with a one-hour average response for critical issues.
Details
Introducing multi-product solutions
You can now purchase comprehensive solutions tailored to use cases and industries.
Features and programs
Financing for AWS Marketplace purchases
Pricing
Free trial
- ...
Dimension | Description | Cost/hour |
|---|---|---|
t3.large Recommended | t3.large | $0.08 |
t3.micro | t3.micro instance type | $0.04 |
t2.micro | t2.micro instance type | $0.04 |
c6in.xlarge | c6in.xlarge instance type | $0.12 |
m8azn.medium | m8azn.medium instance type | $0.04 |
r7a.48xlarge | r7a.48xlarge instance type | $0.24 |
c8id.4xlarge | c8id.4xlarge instance type | $0.24 |
d3en.xlarge | d3en.xlarge instance type | $0.12 |
c8a.8xlarge | c8a.8xlarge instance type | $0.24 |
m8in.4xlarge | m8in.4xlarge instance type | $0.24 |
Vendor refund policy
Refunds available on request.
How can we make this page better?
Legal
Vendor terms and conditions
Content disclaimer
Delivery details
64-bit (x86) Amazon Machine Image (AMI)
Amazon Machine Image (AMI)
An AMI is a virtual image that provides the information required to launch an instance. Amazon EC2 (Elastic Compute Cloud) instances are virtual servers on which you can run your applications and workloads, offering varying combinations of CPU, memory, storage, and networking resources. You can launch as many instances from as many different AMIs as you need.
Version release notes
Initial release of Streamlit 1.58.0 with a ready-to-run demo data app behind an authenticating nginx proxy.
Additional details
Usage instructions
Connect via SSH on port 22 as the default login user for your operating system variant (the user guide lists it per variant). The Streamlit app is served on port 80: browse to http://<instance-public-ip>/ and sign in with user admin and the generated password. Retrieve the credentials with: sudo cat /root/streamlit-credentials.txt. nginx reverse-proxies port 80 to the Streamlit process on 127.0.0.1:8501 (with the WebSocket upgrade Streamlit needs) behind HTTP Basic auth. A demo app ships at /opt/streamlit/app.py; replace it with your own Python app, then run: sudo systemctl restart streamlit.service. Install extra Python packages into the bundled virtual environment with: sudo /opt/streamlit/venv/bin/pip install <package>. The application directory, including the virtual environment, lives on a dedicated data disk mounted at /opt/streamlit.
Resources
Vendor resources
Support
Vendor support
cloudimg provides 24/7 technical support for this product by email and live chat.
What We Help With
- Initial deployment and instance configuration
- Deploying your own Streamlit app and managing Python dependencies
- TLS/SSL certificate setup and custom authentication
- Performance tuning and scaling guidance
- Troubleshooting nginx proxy, systemd service, and WebSocket issues
- Requesting refunds or billing inquiries
Response Times
Critical issues receive a one-hour average response. General inquiries are typically addressed within the same business day.
How to Reach Us
Email: support@cloudimg.co.uk Live chat: Available 24/7 through our support portal
Our engineers are experienced with production Streamlit deployments on AWS and can assist with configuration questions at any stage of your project.
AWS infrastructure support
AWS Support is a one-on-one, fast-response support channel that is staffed 24x7x365 with experienced and technical support engineers. The service helps customers of all sizes and technical abilities to successfully utilize the products and features provided by Amazon Web Services.