A Bokeh app that uses the CO2-GDP dataset to visualize the relationship between CO2 emissions and GDP.
The app is deployed as an Azure App Service at: https://co2-gdp-bokeh-db.manuel-doemer.ch
The dataset is sourced from Our World in Data – CO2 and Greenhouse Gas Emissions.
Dependencies are managed with uv via pyproject.toml and uv.lock.
Azure App Service Oryx automatically detects pyproject.toml + uv.lock and installs dependencies with uv during deployment.
Install uv (if not already installed):
curl -LsSf https://astral.sh/uv/install.sh | shSet up the local environment:
uv syncRun the app locally:
uv run bokeh serve main.py --showApp Service Stack: Python - Version 3.12
GitHub actions workflow: .github/workflows/main_bokehsampledb.yml
Startup command:
python -m bokeh serve main.py --port 8000 --address 0.0.0.0 --unused-session-lifetime 5000 --check-unused-sessions 5000 --allow-websocket-origin=<AZURE GENERATED URL>.azurewebsites.net --allow-websocket-origin=co2-gdp-bokeh-db.manuel-doemer.chCustom domain: co2-gdp-bokeh-db.manuel-doemer.ch
- Bokeh Documentation
- uv Documentation
- Azure App Service Python WebApp Documentation: Deploying Python Web Apps
- CI/CD: Azure App Service and GitHub Actions
This project is licensed under the CC BY-NC 4.0 license.