flask-cloudflared

Start a TryCloudflare tunnel to your flask app right from code.
This requires at least Python 3.6
Behavior
The Flask app will run on port 5000 by default and start the Cloudflared metrics page on a random port between 8100 and 9000.
This can be changed by passing the port and metrics_port arguments to the app.run() function after using the run_with_cloudflared decorator.
Using get_cloudflared_url the tunnel URL can be returned.
Custom tunnel domain
By default, the tunnel will be created with a random subdomain of trycloudflare.com.
To use custom domains, follow this tutorial by Cloudflare and pass either the tunnel_id or config_path arguments to the app.run() function after using the run_with_cloudflared decorator. For an example check out examples/flask_cloudflared_example.py.
Acknowledgements
This project is based on flask-ngrok.