Skip to content

[Error] langgraph cli로 docker 이미지 빌드 및 실행 시 에러 발생. #53

@gsgh3016

Description

@gsgh3016

에러 설명
https://langchain-ai.github.io/langgraph/cloud/reference/cli/#dockerfile 에 설명된 내용대로 도커 이미지를 빌드하고 컨테이너 실행 시 에러가 발생합니다. 요약하자면 다음과 같습니다.

  • pyproject.toml 및 langgraph.json 설정 문제
  • langgraph dockerfile 명령어를 사용하여 빌드 시, DB 연동을 필요로 함(현재까지 PostgreSQL, Redis 연동이 필수임을 확인)

해당 에러가 향후 모듈화 및 배포에 치명적이라고 생각해서 컨테이너 관리 관련 논의가 필요해보입니다.

다른 분들의 참조를 위해 전체 터미널 로그를 공유하겠습니다.

(pseudo-entertainment) chan@gang-gamchan-ui-MacBookPro-2 Pseudo-Entertainment-Company % langgraph dockerfile -c langgraph.json agents/text/dockerfile
🔍 Validating configuration at path: /Users/chan/Pseudo-Entertainment-Company/langgraph.json
✅ Configuration validated!
📝 Generating Dockerfile at /Users/chan/Pseudo-Entertainment-Company/agents/text/dockerfile
✅ Created: Dockerfile
🎉 Files generated successfully at path /Users/chan/Pseudo-Entertainment-Company/agents/text!
(pseudo-entertainment) chan@gang-gamchan-ui-MacBookPro-2 Pseudo-Entertainment-Company % docker build -f agents/text/dockerfile -t text-agents .
[+] Building 2.6s (7/11)                  docker:desktop-linux
 => [internal] load build definition from dockerfile      0.0s
 => => transferring dockerfile: 1.28kB                    0.0s
 => [internal] load metadata for docker.io/langchain/lan  0.0s
 => [internal] load .dockerignore                         0.0s
 => => transferring context: 2B                           0.0s
 => [internal] load build context                         0.5s
 => => transferring context: 1.99MB                       0.5s
 => CACHED [1/7] FROM docker.io/langchain/langgraph-api:  0.0s
 => [2/7] ADD . /deps/Pseudo-Entertainment-Company        0.6s
 => ERROR [3/7] RUN PYTHONDONTWRITEBYTECODE=1 pip instal  1.5s
------                                                         
 > [3/7] RUN PYTHONDONTWRITEBYTECODE=1 pip install --no-cache-dir -c /api/constraints.txt -e /deps/*:                         
0.248 Obtaining file:///deps/Pseudo-Entertainment-Company      
0.249   Installing build dependencies: started                 
1.185   Installing build dependencies: finished with status 'done'
1.185   Checking if build backend supports build_editable: started
1.256   Checking if build backend supports build_editable: finished with status 'done'
1.257   Getting requirements to build editable: started
1.345   Getting requirements to build editable: finished with status 'error'
1.347   error: subprocess-exited-with-error
1.347   
1.347   × Getting requirements to build editable did not run successfully.
1.347   │ exit code: 1
1.347   ╰─> [14 lines of output]
1.347       error: Multiple top-level packages discovered in a flat-layout: ['poc', 'media', 'agents'].
1.347       
1.347       To avoid accidental inclusion of unwanted files or directories,
1.347       setuptools will not proceed with this build.
1.347       
1.347       If you are trying to create a single distribution with multiple packages
1.347       on purpose, you should not rely on automatic discovery.
1.347       Instead, consider the following options:
1.347       
1.347       1. set up custom discovery (`find` directive with `include` or `exclude`)
1.347       2. use a `src-layout`
1.347       3. explicitly set `py_modules` or `packages` with a list of names
1.347       
1.347       To find more information, look for "package discovery" on setuptools docs.
1.347       [end of output]
1.347   
1.347   note: This error originates from a subprocess, and is likely not a problem with pip.
1.348 error: subprocess-exited-with-error
1.348 
1.348 × Getting requirements to build editable did not run successfully.
1.348 │ exit code: 1
1.348 ╰─> See above for output.
1.348 
1.348 note: This error originates from a subprocess, and is likely not a problem with pip.
1.413 
1.413 [notice] A new release of pip is available: 24.0 -> 25.1.1
1.413 [notice] To update, run: pip install --upgrade pip
------
dockerfile:10
--------------------
   8 |     
   9 |     # -- Installing all local dependencies --
  10 | >>> RUN PYTHONDONTWRITEBYTECODE=1 pip install --no-cache-dir -c /api/constraints.txt -e /deps/*
  11 |     # -- End of local dependencies install --
  12 |     ENV LANGSERVE_GRAPHS='{"text": "/deps/Pseudo-Entertainment-Company/agents/text/workflow.py:text_workflow"}'
--------------------
ERROR: failed to solve: process "/bin/sh -c PYTHONDONTWRITEBYTECODE=1 pip install --no-cache-dir -c /api/constraints.txt -e /deps/*" did not complete successfully: exit code: 1

(pseudo-entertainment) chan@gang-gamchan-ui-MacBookPro-2 Pseudo-Entertainment-Company %
(pseudo-entertainment) chan@gang-gamchan-ui-MacBookPro-2 Pseudo-Entertainment-Company % langgraph dockerfile -c langgraph.json agents/text/dockerfile
🔍 Validating configuration at path: /Users/chan/Pseudo-Entertainment-Company/langgraph.json
✅ Configuration validated!
📝 Generating Dockerfile at /Users/chan/Pseudo-Entertainment-Company/agents/text/dockerfile
✅ Created: Dockerfile
🎉 Files generated successfully at path /Users/chan/Pseudo-Entertainment-Company/agents/text!
(pseudo-entertainment) chan@gang-gamchan-ui-MacBookPro-2 Pseudo-Entertainment-Company % docker build -f agents/text/dockerfile -t text-agents .      
[+] Building 1.6s (7/10)                                       docker:desktop-linux
 => [internal] load build definition from dockerfile                           0.0s
 => => transferring dockerfile: 1.21kB                                         0.0s
 => [internal] load metadata for docker.io/langchain/langgraph-api:3.11        0.0s
 => [internal] load .dockerignore                                              0.0s
 => => transferring context: 2B                                                0.0s
 => [internal] load build context                                              0.1s
 => => transferring context: 5.45kB                                            0.1s
 => CACHED [1/6] FROM docker.io/langchain/langgraph-api:3.11                   0.0s
 => [2/6] ADD ./agents/text /deps/text                                         0.0s
 => ERROR [3/6] RUN PYTHONDONTWRITEBYTECODE=1 pip install --no-cache-dir -c /  1.5s
------                                                                              
 > [3/6] RUN PYTHONDONTWRITEBYTECODE=1 pip install --no-cache-dir -c /api/constraints.txt -e /deps/*:                                                                   
0.257 Obtaining file:///deps/text                                                   
0.258   Installing build dependencies: started                                      
1.179   Installing build dependencies: finished with status 'done'                  
1.180   Checking if build backend supports build_editable: started
1.250   Checking if build backend supports build_editable: finished with status 'done'
1.251   Getting requirements to build editable: started
1.342   Getting requirements to build editable: finished with status 'error'
1.344   error: subprocess-exited-with-error
1.344   
1.344   × Getting requirements to build editable did not run successfully.
1.344   │ exit code: 1
1.344   ╰─> [14 lines of output]
1.344       error: Multiple top-level packages discovered in a flat-layout: ['mcp', 'modules'].
1.344       
1.344       To avoid accidental inclusion of unwanted files or directories,
1.344       setuptools will not proceed with this build.
1.344       
1.344       If you are trying to create a single distribution with multiple packages
1.344       on purpose, you should not rely on automatic discovery.
1.344       Instead, consider the following options:
1.344       
1.344       1. set up custom discovery (`find` directive with `include` or `exclude`)
1.344       2. use a `src-layout`
1.344       3. explicitly set `py_modules` or `packages` with a list of names
1.344       
1.344       To find more information, look for "package discovery" on setuptools docs.
1.344       [end of output]
1.344   
1.344   note: This error originates from a subprocess, and is likely not a problem with pip.
1.345 error: subprocess-exited-with-error
1.345 
1.345 × Getting requirements to build editable did not run successfully.
1.345 │ exit code: 1
1.345 ╰─> See above for output.
1.345 
1.345 note: This error originates from a subprocess, and is likely not a problem with pip.
1.409 
1.409 [notice] A new release of pip is available: 24.0 -> 25.1.1
1.409 [notice] To update, run: pip install --upgrade pip
------
dockerfile:10
--------------------
   8 |     
   9 |     # -- Installing all local dependencies --
  10 | >>> RUN PYTHONDONTWRITEBYTECODE=1 pip install --no-cache-dir -c /api/constraints.txt -e /deps/*
  11 |     # -- End of local dependencies install --
  12 |     ENV LANGSERVE_GRAPHS='{"text": "/deps/text/workflow.py:text_workflow"}'
--------------------
ERROR: failed to solve: process "/bin/sh -c PYTHONDONTWRITEBYTECODE=1 pip install --no-cache-dir -c /api/constraints.txt -e /deps/*" did not complete successfully: exit code: 1

View build details: docker-desktop://dashboard/build/desktop-linux/desktop-linux/i2s70zof0hwf9haq9p3zbz5vl
(pseudo-entertainment) chan@gang-gamchan-ui-MacBookPro-2 Pseudo-Entertainment-Company % langgraph dockerfile -c langgraph.json agents/text/dockerfile
🔍 Validating configuration at path: /Users/chan/Pseudo-Entertainment-Company/langgraph.json
✅ Configuration validated!
📝 Generating Dockerfile at /Users/chan/Pseudo-Entertainment-Company/agents/text/dockerfile
✅ Created: Dockerfile
🎉 Files generated successfully at path /Users/chan/Pseudo-Entertainment-Company/agents/text!
(pseudo-entertainment) chan@gang-gamchan-ui-MacBookPro-2 Pseudo-Entertainment-Company % docker build -f agents/text/dockerfile -t text-agents .      
[+] Building 2.0s (7/10)                                       docker:desktop-linux
 => [internal] load build definition from dockerfile                           0.0s
 => => transferring dockerfile: 1.21kB                                         0.0s
 => [internal] load metadata for docker.io/langchain/langgraph-api:3.11        0.0s
 => [internal] load .dockerignore                                              0.0s
 => => transferring context: 2B                                                0.0s
 => [internal] load build context                                              0.0s
 => => transferring context: 6.17kB                                            0.0s
 => CACHED [1/6] FROM docker.io/langchain/langgraph-api:3.11                   0.0s
 => [2/6] ADD ./agents/text /deps/text                                         0.0s
 => ERROR [3/6] RUN PYTHONDONTWRITEBYTECODE=1 pip install --no-cache-dir -c /  1.9s
------                                                                              
 > [3/6] RUN PYTHONDONTWRITEBYTECODE=1 pip install --no-cache-dir -c /api/constraints.txt -e /deps/*:                                                                   
0.247 Obtaining file:///deps/text                                                   
0.248   Installing build dependencies: started                                      
1.168   Installing build dependencies: finished with status 'done'                  
1.169   Checking if build backend supports build_editable: started
1.243   Checking if build backend supports build_editable: finished with status 'done'
1.244   Getting requirements to build editable: started
1.335   Getting requirements to build editable: finished with status 'done'
1.336   Preparing editable metadata (pyproject.toml): started
1.433   Preparing editable metadata (pyproject.toml): finished with status 'done'
1.491 Collecting langchain-mcp-adapters>=0.0.9 (from text==0.1.0)
1.527   Downloading langchain_mcp_adapters-0.1.7-py3-none-any.whl.metadata (9.6 kB)
1.553 Collecting langchain-openai>=0.3.12 (from text==0.1.0)
1.558   Downloading langchain_openai-0.3.22-py3-none-any.whl.metadata (2.3 kB)
1.573 Collecting mcp>=1.6.0 (from text==0.1.0)
1.580   Downloading mcp-1.9.4-py3-none-any.whl.metadata (28 kB)
1.797 Collecting newsapi-python>=0.2.7 (from text==0.1.0)
1.804   Downloading newsapi_python-0.2.7-py2.py3-none-any.whl.metadata (1.2 kB)
1.805 INFO: pip is looking at multiple versions of text to determine which version is compatible with other requirements. This could take a while.
1.805 ERROR: Package 'text' requires a different Python: 3.11.12 not in '>=3.13'
1.886 
1.886 [notice] A new release of pip is available: 24.0 -> 25.1.1
1.886 [notice] To update, run: pip install --upgrade pip
------
dockerfile:10
--------------------
   8 |     
   9 |     # -- Installing all local dependencies --
  10 | >>> RUN PYTHONDONTWRITEBYTECODE=1 pip install --no-cache-dir -c /api/constraints.txt -e /deps/*
  11 |     # -- End of local dependencies install --
  12 |     ENV LANGSERVE_GRAPHS='{"text": "/deps/text/workflow.py:text_workflow"}'
--------------------
ERROR: failed to solve: process "/bin/sh -c PYTHONDONTWRITEBYTECODE=1 pip install --no-cache-dir -c /api/constraints.txt -e /deps/*" did not complete successfully: exit code: 1

View build details: docker-desktop://dashboard/build/desktop-linux/desktop-linux/kca4dc8rsqpkp86y6xcbv67uu
(pseudo-entertainment) chan@gang-gamchan-ui-MacBookPro-2 Pseudo-Entertainment-Company % langgraph dockerfile -c langgraph.json agents/text/dockerfile
🔍 Validating configuration at path: /Users/chan/Pseudo-Entertainment-Company/langgraph.json
✅ Configuration validated!
📝 Generating Dockerfile at /Users/chan/Pseudo-Entertainment-Company/agents/text/dockerfile
✅ Created: Dockerfile
🎉 Files generated successfully at path /Users/chan/Pseudo-Entertainment-Company/agents/text!
(pseudo-entertainment) chan@gang-gamchan-ui-MacBookPro-2 Pseudo-Entertainment-Company % docker build -f agents/text/dockerfile -t text-agents .      
[+] Building 5.9s (11/11) FINISHED                             docker:desktop-linux
 => [internal] load build definition from dockerfile                           0.0s
 => => transferring dockerfile: 1.21kB                                         0.0s
 => [internal] load metadata for docker.io/langchain/langgraph-api:3.11        0.0s
 => [internal] load .dockerignore                                              0.0s
 => => transferring context: 2B                                                0.0s
 => [internal] load build context                                              0.0s
 => => transferring context: 6.17kB                                            0.0s
 => CACHED [1/6] FROM docker.io/langchain/langgraph-api:3.11                   0.0s
 => [2/6] ADD ./agents/text /deps/text                                         0.0s
 => [3/6] RUN PYTHONDONTWRITEBYTECODE=1 pip install --no-cache-dir -c /api/co  3.9s
 => [4/6] RUN mkdir -p /api/langgraph_api /api/langgraph_runtime /api/langgra  0.1s 
 => [5/6] RUN PYTHONDONTWRITEBYTECODE=1 pip install --no-cache-dir --no-deps   1.2s 
 => [6/6] RUN pip uninstall -y pip setuptools wheel &&     rm -rf /usr/local/  0.6s 
 => exporting to image                                                         0.1s 
 => => exporting layers                                                        0.1s 
 => => writing image sha256:588003cd55f37db9ebe0dfddb876289440375627d51edfb00  0.0s 
 => => naming to docker.io/library/text-agents                                 0.0s 
                                                                                    
View build details: docker-desktop://dashboard/build/desktop-linux/desktop-linux/la8z5ifvy65wrb7r421c6dpdl

What's next:
    View a summary of image vulnerabilities and recommendations → docker scout quickview 
(pseudo-entertainment) chan@gang-gamchan-ui-MacBookPro-2 Pseudo-Entertainment-Company % docker run --env-file .env -p 2024:2024 -p 8000:8000 text-agents
Traceback (most recent call last):
  File "/usr/local/bin/uvicorn", line 8, in <module>
    sys.exit(main())
             ^^^^^^
  File "/usr/local/lib/python3.11/site-packages/click/core.py", line 1161, in __call__
    return self.main(*args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.11/site-packages/click/core.py", line 1082, in main
    rv = self.invoke(ctx)
         ^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.11/site-packages/click/core.py", line 1443, in invoke
    return ctx.invoke(self.callback, **ctx.params)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.11/site-packages/click/core.py", line 788, in invoke
    return __callback(*args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.11/site-packages/uvicorn/main.py", line 412, in main
    run(
  File "/usr/local/lib/python3.11/site-packages/uvicorn/main.py", line 579, in run
    server.run()
  File "/usr/local/lib/python3.11/site-packages/uvicorn/server.py", line 66, in run
    return asyncio.run(self.serve(sockets=sockets))
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.11/asyncio/runners.py", line 190, in run
    return runner.run(main)
           ^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.11/asyncio/runners.py", line 118, in run
    return self._loop.run_until_complete(task)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "uvloop/loop.pyx", line 1518, in uvloop.loop.Loop.run_until_complete
  File "/usr/local/lib/python3.11/site-packages/uvicorn/server.py", line 70, in serve
    await self._serve(sockets)
  File "/usr/local/lib/python3.11/site-packages/uvicorn/server.py", line 77, in _serve
    config.load()
  File "/usr/local/lib/python3.11/site-packages/uvicorn/config.py", line 435, in load
    self.loaded_app = import_from_string(self.app)
                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.11/site-packages/uvicorn/importer.py", line 19, in import_from_string
    module = importlib.import_module(module_str)
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.11/importlib/__init__.py", line 126, in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "<frozen importlib._bootstrap>", line 1204, in _gcd_import
  File "<frozen importlib._bootstrap>", line 1176, in _find_and_load
  File "<frozen importlib._bootstrap>", line 1147, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 690, in _load_unlocked
  File "<frozen importlib._bootstrap_external>", line 940, in exec_module
  File "<frozen importlib._bootstrap>", line 241, in _call_with_frames_removed
  File "/api/langgraph_api/server.py", line 18, in <module>
  File "/api/langgraph_api/api/__init__.py", line 12, in <module>
  File "/api/langgraph_api/api/assistants.py", line 12, in <module>
  File "/api/langgraph_api/graph.py", line 26, in <module>
  File "/api/langgraph_api/config.py", line 142, in <module>
  File "/usr/local/lib/python3.11/site-packages/starlette/config.py", line 90, in __call__
    return self.get(key, cast, default)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.11/site-packages/starlette/config.py", line 107, in get
    raise KeyError(f"Config '{key}' is missing, and has no default.")
KeyError: "Config 'DATABASE_URI' is missing, and has no default."
(pseudo-entertainment) chan@gang-gamchan-ui-MacBookPro-2 Pseudo-Entertainment-Company % docker build -f agents/text/dockerfile -t text-agents .
[+] Building 0.0s (11/11) FINISHED         docker:desktop-linux
 => [internal] load build definition from dockerfile       0.0s
 => => transferring dockerfile: 1.21kB                     0.0s
 => [internal] load metadata for docker.io/langchain/lang  0.0s
 => [internal] load .dockerignore                          0.0s
 => => transferring context: 2B                            0.0s
 => [internal] load build context                          0.0s
 => => transferring context: 4.31kB                        0.0s
 => [1/6] FROM docker.io/langchain/langgraph-api:3.11      0.0s
 => CACHED [2/6] ADD ./agents/text /deps/text              0.0s
 => CACHED [3/6] RUN PYTHONDONTWRITEBYTECODE=1 pip instal  0.0s
 => CACHED [4/6] RUN mkdir -p /api/langgraph_api /api/lan  0.0s
 => CACHED [5/6] RUN PYTHONDONTWRITEBYTECODE=1 pip instal  0.0s
 => CACHED [6/6] RUN pip uninstall -y pip setuptools whee  0.0s
 => exporting to image                                     0.0s
 => => exporting layers                                    0.0s
 => => writing image sha256:588003cd55f37db9ebe0dfddb8762  0.0s
 => => naming to docker.io/library/text-agents             0.0s

View build details: docker-desktop://dashboard/build/desktop-linux/desktop-linux/1w68l52bm9v2i9xciakn9xoaw

What's next:
    View a summary of image vulnerabilities and recommendations → docker scout quickview 
(pseudo-entertainment) chan@gang-gamchan-ui-MacBookPro-2 Pseudo-Entertainment-Company % docker run --env-file .env -p 2024:2024 -p 8000:8000 text-agents
Traceback (most recent call last):
  File "/usr/local/bin/uvicorn", line 8, in <module>
    sys.exit(main())
             ^^^^^^
  File "/usr/local/lib/python3.11/site-packages/click/core.py", line 1161, in __call__
    return self.main(*args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.11/site-packages/click/core.py", line 1082, in main
    rv = self.invoke(ctx)
         ^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.11/site-packages/click/core.py", line 1443, in invoke
    return ctx.invoke(self.callback, **ctx.params)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.11/site-packages/click/core.py", line 788, in invoke
    return __callback(*args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.11/site-packages/uvicorn/main.py", line 412, in main
    run(
  File "/usr/local/lib/python3.11/site-packages/uvicorn/main.py", line 579, in run
    server.run()
  File "/usr/local/lib/python3.11/site-packages/uvicorn/server.py", line 66, in run
    return asyncio.run(self.serve(sockets=sockets))
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.11/asyncio/runners.py", line 190, in run
    return runner.run(main)
           ^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.11/asyncio/runners.py", line 118, in run
    return self._loop.run_until_complete(task)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "uvloop/loop.pyx", line 1518, in uvloop.loop.Loop.run_until_complete
  File "/usr/local/lib/python3.11/site-packages/uvicorn/server.py", line 70, in serve
    await self._serve(sockets)
  File "/usr/local/lib/python3.11/site-packages/uvicorn/server.py", line 77, in _serve
    config.load()
  File "/usr/local/lib/python3.11/site-packages/uvicorn/config.py", line 435, in load
    self.loaded_app = import_from_string(self.app)
                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.11/site-packages/uvicorn/importer.py", line 19, in import_from_string
    module = importlib.import_module(module_str)
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.11/importlib/__init__.py", line 126, in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "<frozen importlib._bootstrap>", line 1204, in _gcd_import
  File "<frozen importlib._bootstrap>", line 1176, in _find_and_load
  File "<frozen importlib._bootstrap>", line 1147, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 690, in _load_unlocked
  File "<frozen importlib._bootstrap_external>", line 940, in exec_module
  File "<frozen importlib._bootstrap>", line 241, in _call_with_frames_removed
  File "/api/langgraph_api/server.py", line 18, in <module>
  File "/api/langgraph_api/api/__init__.py", line 12, in <module>
  File "/api/langgraph_api/api/assistants.py", line 12, in <module>
  File "/api/langgraph_api/graph.py", line 26, in <module>
  File "/api/langgraph_api/config.py", line 158, in <module>
  File "/usr/local/lib/python3.11/site-packages/starlette/config.py", line 90, in __call__
    return self.get(key, cast, default)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.11/site-packages/starlette/config.py", line 107, in get
    raise KeyError(f"Config '{key}' is missing, and has no default.")
KeyError: "Config 'REDIS_URI' is missing, and has no default."
(pseudo-entertainment) chan@gang-gamchan-ui-MacBookPro-2 Pseudo-Entertainment-Company % docker run --env-file .env -p 2024:2024 -p 8000:8000 text-agents
2025-06-12T14:10:04.485220Z [info     ] Using langgraph_runtime_postgres [langgraph_runtime] api_revision=ebc30d9 api_variant=licensed thread_name=MainThread
2025-06-12T14:10:04.500901Z [info     ] Using auth of type=noop        [langgraph_api.auth.middleware] api_revision=ebc30d9 api_variant=licensed thread_name=MainThread
2025-06-12T14:10:04.501637Z [info     ] Started server process [1]     [uvicorn.error] api_revision=ebc30d9 api_variant=licensed color_message='Started server process [\x1b[36m%d\x1b[0m]' thread_name=MainThread
2025-06-12T14:10:04.501734Z [info     ] Waiting for application startup. [uvicorn.error] api_revision=ebc30d9 api_variant=licensed thread_name=MainThread
2025-06-12T14:10:04.503249Z [info     ] Starting Postgres runtime with langgraph-api=0.1.3 [langgraph_runtime_postgres.lifespan] api_revision=ebc30d9 api_variant=licensed thread_name=ThreadPoolExecutor-1_0 version=0.1.3
2025-06-12T14:10:04.503412Z [warning  ] No license key found, running in test mode with LangSmith API key. For production use, set LANGGRAPH_CLOUD_LICENSE_KEY in environment. [langgraph_license.validation] api_revision=ebc30d9 api_variant=licensed thread_name=MainThread
2025-06-12T14:10:04.805213Z [info     ] HTTP Request: GET https://api.smith.langchain.com/auth?langgraph-api=true "HTTP/1.1 200 OK" [httpx] api_revision=ebc30d9 api_variant=licensed thread_name=MainThread
2025-06-12T14:10:04.837201Z [error    ] Traceback (most recent call last):
  File "/usr/local/lib/python3.11/site-packages/starlette/routing.py", line 692, in lifespan
    async with self.lifespan_context(app) as maybe_state:
  File "/usr/local/lib/python3.11/contextlib.py", line 210, in __aenter__
    return await anext(self.gen)
           ^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.11/site-packages/langgraph_runtime_postgres/lifespan.py", line 56, in lifespan
    await database.start_pool()
  File "/usr/local/lib/python3.11/site-packages/langgraph_runtime_postgres/database.py", line 214, in start_pool
    _pg_pool = create_pool()
               ^^^^^^^^^^^^^
  File "/usr/local/lib/python3.11/site-packages/langgraph_runtime_postgres/database.py", line 81, in create_pool
    params = conninfo_to_dict(config.DATABASE_URI)
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.11/site-packages/psycopg/conninfo.py", line 82, in conninfo_to_dict
    opts = _parse_conninfo(conninfo)
           ^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.11/site-packages/psycopg/conninfo.py", line 103, in _parse_conninfo
    raise e.ProgrammingError(str(ex)) from None
psycopg.ProgrammingError: missing "=" after "sqlite:///data.db" in connection info string

 [uvicorn.error] api_revision=ebc30d9 api_variant=licensed thread_name=MainThread
2025-06-12T14:10:04.837344Z [error    ] Application startup failed. Exiting. [uvicorn.error] api_revision=ebc30d9 api_variant=licensed thread_name=MainThread
(pseudo-entertainment) chan@gang-gamchan-ui-MacBookPro-2 Pseudo-Entertainment-Company % 

Metadata

Metadata

Labels

errorSomething isn't working in Userhelp wantedExtra attention is neededwontfixThis will not be worked on

Type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions