xhongc / music-tag-web

音乐标签编辑器,可编辑本地音乐文件的元数据(Editable local music file metadata.)
https://xiers-organization.gitbook.io/music-tag-web-v2
GNU General Public License v3.0
2.28k stars 149 forks source link

docker 从 1.2.7 开始无法启动 #106

Closed 4ft35t closed 10 months ago

4ft35t commented 10 months ago
Recreating music-tag-web ... done
Attaching to music-tag-web
music-tag-web | Traceback (most recent call last):
music-tag-web |   File "/usr/local/lib/python3.9/site-packages/django/db/backends/base/base.py", line 217, in ensure_connection
music-tag-web |     self.connect()
music-tag-web |   File "/usr/local/lib/python3.9/site-packages/django/db/backends/base/base.py", line 195, in connect
music-tag-web |     self.connection = self.get_new_connection(conn_params)
music-tag-web |   File "/usr/local/lib/python3.9/site-packages/django/db/backends/sqlite3/base.py", line 194, in get_new_connection
music-tag-web |     conn = Database.connect(**conn_params)
music-tag-web | sqlite3.OperationalError: unable to open database file
music-tag-web |
music-tag-web | The above exception was the direct cause of the following exception:
music-tag-web |
music-tag-web | Traceback (most recent call last):
music-tag-web |   File "/app/manage.py", line 22, in <module>
music-tag-web |     main()
music-tag-web |   File "/app/manage.py", line 18, in main
music-tag-web |     execute_from_command_line(sys.argv)
music-tag-web |   File "/usr/local/lib/python3.9/site-packages/django/core/management/__init__.py", line 381, in execute_from_command_line
music-tag-web |     utility.execute()
music-tag-web |   File "/usr/local/lib/python3.9/site-packages/django/core/management/__init__.py", line 375, in execute
music-tag-web |     self.fetch_command(subcommand).run_from_argv(self.argv)
music-tag-web |   File "/usr/local/lib/python3.9/site-packages/django/core/management/base.py", line 323, in run_from_argv
music-tag-web |     self.execute(*args, **cmd_options)
music-tag-web |   File "/usr/local/lib/python3.9/site-packages/django/core/management/base.py", line 364, in execute
music-tag-web |     output = self.handle(*args, **options)
music-tag-web |   File "/usr/local/lib/python3.9/site-packages/django/core/management/base.py", line 83, in wrapped
music-tag-web |     res = handle_func(*args, **kwargs)
music-tag-web |   File "/usr/local/lib/python3.9/site-packages/django/core/management/commands/migrate.py", line 87, in handle
music-tag-web |     executor = MigrationExecutor(connection, self.migration_progress_callback)
music-tag-web |   File "/usr/local/lib/python3.9/site-packages/django/db/migrations/executor.py", line 18, in __init__
music-tag-web |     self.loader = MigrationLoader(self.connection)
music-tag-web |   File "/usr/local/lib/python3.9/site-packages/django/db/migrations/loader.py", line 49, in __init__
music-tag-web |     self.build_graph()
music-tag-web |   File "/usr/local/lib/python3.9/site-packages/django/db/migrations/loader.py", line 212, in build_graph
music-tag-web |     self.applied_migrations = recorder.applied_migrations()
music-tag-web |   File "/usr/local/lib/python3.9/site-packages/django/db/migrations/recorder.py", line 73, in applied_migrations
music-tag-web |     if self.has_table():
music-tag-web |   File "/usr/local/lib/python3.9/site-packages/django/db/migrations/recorder.py", line 56, in has_table
music-tag-web |     return self.Migration._meta.db_table in self.connection.introspection.table_names(self.connection.cursor())
music-tag-web |   File "/usr/local/lib/python3.9/site-packages/django/db/backends/base/base.py", line 256, in cursor
music-tag-web |     return self._cursor()
music-tag-web |   File "/usr/local/lib/python3.9/site-packages/django/db/backends/base/base.py", line 233, in _cursor
music-tag-web |     self.ensure_connection()
music-tag-web |   File "/usr/local/lib/python3.9/site-packages/django/db/backends/base/base.py", line 217, in ensure_connection
music-tag-web |     self.connect()
music-tag-web |   File "/usr/local/lib/python3.9/site-packages/django/db/utils.py", line 89, in __exit__
music-tag-web |     raise dj_exc_value.with_traceback(traceback) from exc_value
music-tag-web |   File "/usr/local/lib/python3.9/site-packages/django/db/backends/base/base.py", line 217, in ensure_connection
music-tag-web |     self.connect()
music-tag-web |   File "/usr/local/lib/python3.9/site-packages/django/db/backends/base/base.py", line 195, in connect
music-tag-web |     self.connection = self.get_new_connection(conn_params)
music-tag-web |   File "/usr/local/lib/python3.9/site-packages/django/db/backends/sqlite3/base.py", line 194, in get_new_connection
music-tag-web |     conn = Database.connect(**conn_params)
music-tag-web | django.db.utils.OperationalError: unable to open database file

能工作的最新版本:1.2.6

4ft35t commented 10 months ago

找到原因了,1.2.6 及之前版本,不用挂载 /app/data

1.2.7 及之后,容器内没创建 '/app/data' 目录,必需在启动时挂载 /app/data。挂载后可以正常启动。