{"id":1979,"library":"dagster-webserver","title":"Dagster Webserver","description":"Dagster Webserver provides the web-based user interface (UI) for Dagster, a Python library for building data applications. It allows users to view and interact with Dagster objects such as assets, jobs, schedules, and launches runs. The project is actively maintained with frequent minor and patch releases, often on a weekly or bi-weekly basis. The current version is 1.12.22.","status":"active","version":"1.12.22","language":"python","source_language":"en","source_url":"https://github.com/dagster-io/dagster","tags":["data orchestration","etl","mlops","workflow management","ui","web server"],"install":[{"cmd":"pip install dagster-webserver","lang":"bash","label":"Install Dagster Webserver"}],"dependencies":[{"reason":"Core Dagster library, providing the underlying data orchestration framework and APIs that the webserver interacts with.","package":"dagster","optional":false},{"reason":"Required by the core `dagster` package as of recent versions, may cause conflicts with older Pydantic installations.","package":"pydantic>=2","optional":false},{"reason":"Formerly a transitive dependency of `dagster-postgres`, now requires explicit installation if `dagster-postgres` is used. Often discouraged for production use.","package":"psycopg2-binary","optional":true}],"imports":[],"quickstart":{"code":"# 1. Create a directory for your project, e.g., `my_dagster_project`\n# 2. Inside `my_dagster_project`, create a file named `definitions.py`:\n# definitions.py\nfrom dagster import Definitions, asset\n\n@asset\ndef hello_world():\n    \"\"\"A simple asset that prints a message.\"\"\"\n    print(\"Hello, Dagster!\")\n\ndefs = Definitions(assets=[hello_world])\n\n# 3. From the `my_dagster_project` directory, run the Dagster webserver:\n#    (Ensure you have `dagster-webserver` installed in your environment)\n#    The `dagster dev` command will launch both the webserver and the daemon.\n#    It will serve the Dagster UI at http://localhost:3000.\n#    You can also specify the file with -f definitions.py\n#    If you create a workspace.yaml file, you can run 'dagster dev' without arguments.\n#    For this quickstart, running `dagster dev -f definitions.py` in the project root is sufficient.\n\n# To run in terminal:\n# cd my_dagster_project\n# dagster dev -f definitions.py\n","lang":"python","description":"The `dagster-webserver` is typically launched via the `dagster dev` or `dg dev` command-line interface, which starts both the webserver and the Dagster daemon for local development. After installing, create a simple Dagster asset definition in a Python file (e.g., `definitions.py`) and then run `dagster dev -f definitions.py` from your project directory. This will make the UI accessible in your browser, usually at `http://localhost:3000`."},"warnings":[{"fix":"Upgrade your Python environment to 3.10 or higher. Ensure your `requires_python` in `pyproject.toml` or `setup.py` reflects this.","message":"Dagster has dropped support for Python 3.9, which has reached its end-of-life. The minimum supported Python version is now 3.10. Projects on older Python versions will need to upgrade.","severity":"breaking","affected_versions":">=1.12.0"},{"fix":"Update your `pydantic` dependency to version 2 or higher. Carefully review any code relying on `pydantic` V1 features if upgrading.","message":"The core `dagster` package (and by extension, `dagster-webserver`) now requires `pydantic>=2`. This may cause conflicts with existing environments or projects that depend on an older `pydantic` version.","severity":"breaking","affected_versions":">=1.12.0"},{"fix":"Explicitly add `pip install psycopg2-binary` or `pip install psycopg2` to your project's dependencies if using `dagster-postgres`.","message":"`psycopg2-binary` has been removed as a direct dependency from `dagster-postgres` as of `dagster` 1.12.18. If your project uses `dagster-postgres` and implicitly relied on `psycopg2-binary` being installed, you will now need to explicitly add `psycopg2-binary` (or `psycopg2`) to your project's dependencies. Note that `psycopg2-binary` is generally discouraged for production environments due to its pre-compiled nature.","severity":"gotcha","affected_versions":">=1.12.18"},{"fix":"Upgrade `dagster-webserver` to version 1.12.17 or later to resolve the UI loading issue.","message":"A bug in `dagster-webserver` versions prior to 1.12.17 caused the Dagster UI to fail to load due to issues with the built webapp inclusion. Users on these specific versions would experience a non-functional UI.","severity":"gotcha","affected_versions":"<1.12.17"},{"fix":"Prefer `dg dev` over `dagster dev` when launching your local Dagster environment.","message":"The `dagster dev` command is being superseded by `dg dev` for starting a local development deployment (webserver and daemon). While `dagster dev` still works, `dg dev` is the recommended new CLI command.","severity":"deprecated","affected_versions":"All versions where `dg dev` is available."}],"env_vars":null,"search_vec":"'1.12.22':64 'activ':43 'allow':23 'applic':21 'asset':34 'base':9 'basi':59 'bi':57 'bi-week':56 'build':19 'current':61 'dagster':1,3,14,30 'data':20,65 'etl':67 'frequent':46 'interact':28 'interfac':11 'job':35 'launch':38 'librari':17 'maintain':44 'manag':70 'minor':47 'mlop':68 'object':31 'often':51 'orchestr':66 'patch':49 'project':41 'provid':5 'python':16 'releas':50 'run':39 'schedul':36 'server':73 'ui':12,71 'user':10,24 'version':62 'view':26 'web':8,72 'web-bas':7 'webserv':2,4 'week':54,58 'workflow':69","created_at":"2026-04-09T18:38:20.643195+00:00","updated_at":"2026-04-16T05:01:38.802354+00:00","problems":[{"fix":"Ensure your code is installed as an editable package (e.g., `pip install -e .` from your project's root) or that the directory containing your module is added to the `PYTHONPATH` environment variable. Also, verify that the module name provided to `dagster-webserver` (e.g., via `-m` or `workspace.yaml`) is correct.","cause":"The Dagster webserver cannot find or import your user code module, usually because the Python environment where `dagster-webserver` is running does not have your code installed or the `PYTHONPATH` is not correctly configured.","error":"ModuleNotFoundError: No module named 'your_module_name'"},{"fix":"Try running `dagster dev --use-legacy-code-server-behavior` as a workaround. If the issue persists, check that the user running Dagster has appropriate permissions for the temporary directory (often in `AppData\\Local\\Temp` on Windows) and ensure no other processes are locking the files. Downgrading Dagster to a slightly older version (e.g., `1.9.9` if on `1.9.10`) has also been noted as a temporary solution for specific version-related bugs.","cause":"This error, particularly on Windows when running `dagster dev`, often occurs due to file permission issues or conflicts when Dagster tries to create or access temporary files.","error":"PermissionError: [Errno 13] Permission denied"},{"fix":"Verify that your user code server is running and accessible. Check the logs of both the webserver and the user code server for more specific errors. Increase the `code_servers.local_startup_timeout` in your `dagster.yaml` if your code takes a long time to load. In Kubernetes deployments, ensure proper service networking and consider enabling TCP keepalives to prevent idle connection drops.","cause":"The Dagster webserver or daemon is unable to establish a gRPC connection with the user code server that hosts your assets and jobs. This can be due to network issues, the code server crashing, or taking too long to start.","error":"DagsterUserCodeUnreachableError: Could not reach the user code server. gRPC Error code: UNAVAILABLE"},{"fix":"Restart the `dagster-webserver` to clear any stale caches. Try accessing the UI in an incognito window or clear your browser's cache. If running with a path prefix (e.g., in a reverse proxy setup), ensure the `--path-prefix` argument for `dagster-webserver` is correctly configured.","cause":"This UI error, often seen in the browser console, indicates that the Dagster UI failed to load necessary JavaScript or HTML chunks. This can happen if webserver assets are stale or cached incorrectly, or if there's a problem serving the UI files.","error":"Loading chunk X failed."},{"fix":"Install the `dagster-webserver` package using `pip install dagster-webserver` within your active Python environment. If using `conda`, ensure it's installed in the activated `conda` environment.","cause":"Although `dagster dev` is a common command, it explicitly requires the `dagster-webserver` package to be installed in the current Python environment to launch the UI.","error":"Error: The dagster-webserver Python package must be installed in order to use the dagster dev command."}],"ecosystem":"pypi","meta_description":null,"install_score":null,"quickstart_score":null,"quickstart_tag":null,"pypi_latest":null,"cli_name":"dagster-webserver","cli_version":"dagster-webserver, version 1.13.5","type":"library","homepage":"https://dagster.io","github":"https://github.com/dagster-io/dagster","docs":null,"changelog":null,"pypi":"https://pypi.org/project/dagster-webserver/","npm":null,"openapi_spec":null,"status_page":null,"smithery":null,"categories":["workflow","data","web-framework"],"base_url":null,"auth_type":null,"provenance":{"verified_status":null,"verified_at":null,"last_verified":"2026-04-09","next_check":"2026-07-08","install_tag":null}}