一、问题描述        

笔者使用的是windows10系统,在本地使用Docker部署Dify时所有容器均启动成功,但是在进入localhost\install页面时出现了internal server error报错,并且无法出现注册页面,查看日志后得到具体报错:relation "dify_setups" does not exist

二、完整日志如下:

2025-03-05 10:32:46 nginx-1          | 172.19.0.1 - - [05/Mar/2025:02:32:46 +0000] "GET /install HTTP/1.1" 200 5709 "-" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/133.0.0.0 Safari/537.36 Edg/133.0.0.0" "-"
2025-03-05 10:32:46 nginx-1          | 172.19.0.1 - - [05/Mar/2025:02:32:46 +0000] "GET /logo/logo.png HTTP/1.1" 304 0 "http://localhost/install" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/133.0.0.0 Safari/537.36 Edg/133.0.0.0" "-"
2025-03-05 10:32:46 db-1             | 2025-03-05 02:32:46.743 UTC [1797] ERROR:  relation "dify_setups" does not exist at character 103
2025-03-05 10:32:46 db-1             | 2025-03-05 02:32:46.743 UTC [1797] STATEMENT:  SELECT dify_setups.version AS dify_setups_version, dify_setups.setup_at AS dify_setups_setup_at 
2025-03-05 10:32:46 db-1             | FROM dify_setups 
2025-03-05 10:32:46 db-1             |  LIMIT 1
2025-03-05 10:32:46 nginx-1          | 172.19.0.1 - - [05/Mar/2025:02:32:46 +0000] "GET /favicon.ico HTTP/1.1" 304 0 "http://localhost/install" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/133.0.0.0 Safari/537.36 Edg/133.0.0.0" "-"
2025-03-05 10:32:46 api-1            | 2025-03-05 02:32:46.743 ERROR [Dummy-3] [app.py:875] - Exception on /console/api/setup [GET]
2025-03-05 10:32:46 api-1            | Traceback (most recent call last):
2025-03-05 10:32:46 api-1            |   File "/app/api/.venv/lib/python3.12/site-packages/sqlalchemy/engine/base.py", line 1967, in _exec_single_context
2025-03-05 10:32:46 api-1            |     self.dialect.do_execute(
2025-03-05 10:32:46 api-1            |   File "/app/api/.venv/lib/python3.12/site-packages/sqlalchemy/engine/default.py", line 941, in do_execute
2025-03-05 10:32:46 api-1            |     cursor.execute(statement, parameters)
2025-03-05 10:32:46 api-1            | psycopg2.errors.UndefinedTable: relation "dify_setups" does not exist
2025-03-05 10:32:46 api-1            | LINE 2: FROM dify_setups 
2025-03-05 10:32:46 api-1            |              ^
2025-03-05 10:32:46 api-1            | 
2025-03-05 10:32:46 api-1            | 
2025-03-05 10:32:46 api-1            | The above exception was the direct cause of the following exception:
2025-03-05 10:32:46 api-1            | 
2025-03-05 10:32:46 api-1            | Traceback (most recent call last):
2025-03-05 10:32:46 api-1            |   File "/app/api/.venv/lib/python3.12/site-packages/flask/app.py", line 917, in full_dispatch_request
2025-03-05 10:32:46 api-1            |     rv = self.dispatch_request()
2025-03-05 10:32:46 nginx-1          | 172.19.0.1 - - [05/Mar/2025:02:32:46 +0000] "GET /console/api/setup HTTP/1.1" 500 56 "http://localhost/install" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/133.0.0.0 Safari/537.36 Edg/133.0.0.0" "-"
2025-03-05 10:32:46 api-1            |          ^^^^^^^^^^^^^^^^^^^^^^^
2025-03-05 10:32:46 api-1            |   File "/app/api/.venv/lib/python3.12/site-packages/flask/app.py", line 902, in dispatch_request
2025-03-05 10:32:46 api-1            |     return self.ensure_sync(self.view_functions[rule.endpoint])(**view_args)  # type: ignore[no-any-return]
2025-03-05 10:32:46 api-1            |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
2025-03-05 10:32:46 api-1            |   File "/app/api/.venv/lib/python3.12/site-packages/flask_restful/__init__.py", line 489, in wrapper
2025-03-05 10:32:46 api-1            |     resp = resource(*args, **kwargs)
2025-03-05 10:32:46 api-1            |            ^^^^^^^^^^^^^^^^^^^^^^^^^
2025-03-05 10:32:46 api-1            |   File "/app/api/.venv/lib/python3.12/site-packages/flask/views.py", line 110, in view
2025-03-05 10:32:46 api-1            |     return current_app.ensure_sync(self.dispatch_request)(**kwargs)  # type: ignore[no-any-return]
2025-03-05 10:32:46 api-1            |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
2025-03-05 10:32:46 api-1            |   File "/app/api/.venv/lib/python3.12/site-packages/flask_restful/__init__.py", line 604, in dispatch_request
2025-03-05 10:32:46 api-1            |     resp = meth(*args, **kwargs)
2025-03-05 10:32:46 api-1            |            ^^^^^^^^^^^^^^^^^^^^^
2025-03-05 10:32:46 api-1            |   File "/app/api/controllers/console/setup.py", line 19, in get
2025-03-05 10:32:46 api-1            |     setup_status = get_setup_status()
2025-03-05 10:32:46 api-1            |                    ^^^^^^^^^^^^^^^^^^
2025-03-05 10:32:46 api-1            |   File "/app/api/controllers/console/setup.py", line 55, in get_setup_status
2025-03-05 10:32:46 api-1            |     return db.session.query(DifySetup).first()
2025-03-05 10:32:46 api-1            |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
2025-03-05 10:32:46 api-1            |   File "/app/api/.venv/lib/python3.12/site-packages/sqlalchemy/orm/query.py", line 2728, in first
2025-03-05 10:32:46 api-1            |     return self.limit(1)._iter().first()  # type: ignore
2025-03-05 10:32:46 api-1            |            ^^^^^^^^^^^^^^^^^^^^^
2025-03-05 10:32:46 api-1            |   File "/app/api/.venv/lib/python3.12/site-packages/sqlalchemy/orm/query.py", line 2827, in _iter
2025-03-05 10:32:46 api-1            |     result: Union[ScalarResult[_T], Result[_T]] = self.session.execute(
2025-03-05 10:32:46 api-1            |                                                   ^^^^^^^^^^^^^^^^^^^^^
2025-03-05 10:32:46 api-1            |   File "/app/api/.venv/lib/python3.12/site-packages/sqlalchemy/orm/session.py", line 2362, in execute
2025-03-05 10:32:46 api-1            |     return self._execute_internal(
2025-03-05 10:32:46 api-1            |            ^^^^^^^^^^^^^^^^^^^^^^^
2025-03-05 10:32:46 api-1            |   File "/app/api/.venv/lib/python3.12/site-packages/sqlalchemy/orm/session.py", line 2247, in _execute_internal
2025-03-05 10:32:46 api-1            |     result: Result[Any] = compile_state_cls.orm_execute_statement(
2025-03-05 10:32:46 api-1            |                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
2025-03-05 10:32:46 api-1            |   File "/app/api/.venv/lib/python3.12/site-packages/sqlalchemy/orm/context.py", line 305, in orm_execute_statement
2025-03-05 10:32:46 api-1            |     result = conn.execute(
2025-03-05 10:32:46 api-1            |              ^^^^^^^^^^^^^
2025-03-05 10:32:46 api-1            |   File "/app/api/.venv/lib/python3.12/site-packages/sqlalchemy/engine/base.py", line 1418, in execute
2025-03-05 10:32:46 api-1            |     return meth(
2025-03-05 10:32:46 api-1            |            ^^^^^
2025-03-05 10:32:46 api-1            |   File "/app/api/.venv/lib/python3.12/site-packages/sqlalchemy/sql/elements.py", line 515, in _execute_on_connection
2025-03-05 10:32:46 api-1            |     return connection._execute_clauseelement(
2025-03-05 10:32:46 api-1            |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
2025-03-05 10:32:46 api-1            |   File "/app/api/.venv/lib/python3.12/site-packages/sqlalchemy/engine/base.py", line 1640, in _execute_clauseelement
2025-03-05 10:32:46 api-1            |     ret = self._execute_context(
2025-03-05 10:32:46 api-1            |           ^^^^^^^^^^^^^^^^^^^^^^
2025-03-05 10:32:46 api-1            |   File "/app/api/.venv/lib/python3.12/site-packages/sqlalchemy/engine/base.py", line 1846, in _execute_context
2025-03-05 10:32:46 api-1            |     return self._exec_single_context(
2025-03-05 10:32:46 api-1            |            ^^^^^^^^^^^^^^^^^^^^^^^^^^
2025-03-05 10:32:46 api-1            |   File "/app/api/.venv/lib/python3.12/site-packages/sqlalchemy/engine/base.py", line 1986, in _exec_single_context
2025-03-05 10:32:46 api-1            |     self._handle_dbapi_exception(
2025-03-05 10:32:46 api-1            |   File "/app/api/.venv/lib/python3.12/site-packages/sqlalchemy/engine/base.py", line 2355, in _handle_dbapi_exception
2025-03-05 10:32:46 api-1            |     raise sqlalchemy_exception.with_traceback(exc_info[2]) from e
2025-03-05 10:32:46 api-1            |   File "/app/api/.venv/lib/python3.12/site-packages/sqlalchemy/engine/base.py", line 1967, in _exec_single_context
2025-03-05 10:32:46 api-1            |     self.dialect.do_execute(
2025-03-05 10:32:46 api-1            |   File "/app/api/.venv/lib/python3.12/site-packages/sqlalchemy/engine/default.py", line 941, in do_execute
2025-03-05 10:32:46 api-1            |     cursor.execute(statement, parameters)
2025-03-05 10:32:46 api-1            | sqlalchemy.exc.ProgrammingError: (psycopg2.errors.UndefinedTable) relation "dify_setups" does not exist
2025-03-05 10:32:46 api-1            | LINE 2: FROM dify_setups 
2025-03-05 10:32:46 api-1            |              ^
2025-03-05 10:32:46 api-1            | 
2025-03-05 10:32:46 api-1            | [SQL: SELECT dify_setups.version AS dify_setups_version, dify_setups.setup_at AS dify_setups_setup_at 
2025-03-05 10:32:46 api-1            | FROM dify_setups 
2025-03-05 10:32:46 api-1            |  LIMIT %(param_1)s]
2025-03-05 10:32:46 api-1            | [parameters: {'param_1': 1}]
2025-03-05 10:32:46 api-1            | (Background on this error at: https://sqlalche.me/e/20/f405  )

三、解决办法

使用Notepad “切换.env文件” “换行符”

1.方法一

方法二

        

切换后重新启动,无报错

三、参考网页

DifyをDockerで立ち上げたら relation dify_setups does not exist

启动后出现接口错误 500 ·langgenius/dify ·讨论 #7252 ·GitHub的

四、作者的话

麻烦大家点点赞、点点关注,作者等级不够都不能自定义文章标签/(ㄒoㄒ)/~~

Logo

有“AI”的1024 = 2048,欢迎大家加入2048 AI社区

更多推荐