在NAS上部署docker开发者版时未成功,错误提示如下

依据https://docs.seatable.cn/published/seatable-manual/docker/seatable-ce/Deploy%20SeaTable%20with%20Docker.md在通过docker-compose.yml部署时,发现提示错误如下:

root@NAS:/opt/seatable# docker-compose up
seatable-mysql is up-to-date
seatable-memcached is up-to-date
seatable-redis is up-to-date
seatable is up-to-date
Attaching to seatable-mysql, seatable-memcached, seatable-redis, seatable
seatable-mysql | WARNING: no logs are available with the ‘db’ log driver
seatable-memcached | WARNING: no logs are available with the ‘db’ log driver
seatable-redis | WARNING: no logs are available with the ‘db’ log driver
seatable | WARNING: no logs are available with the ‘db’ log driver

后创建管理员账户后提示错误如下:

root@NAS:/opt/seatable# docker exec -it seatable /shared/seatable/scripts/seatable.sh superuser

Traceback (most recent call last):
File “/opt/seatable/seatable-server-latest/dtable-web/thirdpart/django/db/backends/base/base.py”, line 213, in ensure_connection
self.connect()
File “/opt/seatable/seatable-server-latest/dtable-web/thirdpart/django/db/backends/base/base.py”, line 189, in connect
self.connection = self.get_new_connection(conn_params)
File “/opt/seatable/seatable-server-latest/dtable-web/thirdpart/django/db/backends/mysql/base.py”, line 274, in get_new_connection
conn = Database.connect(**conn_params)
File “/opt/seatable/seatable-server-latest/dtable-web/thirdpart/pymysql/init.py”, line 94, in Connect
return Connection(*args, **kwargs)
File “/opt/seatable/seatable-server-latest/dtable-web/thirdpart/pymysql/connections.py”, line 327, in init
self.connect()
File “/opt/seatable/seatable-server-latest/dtable-web/thirdpart/pymysql/connections.py”, line 588, in connect
self._request_authentication()
File “/opt/seatable/seatable-server-latest/dtable-web/thirdpart/pymysql/connections.py”, line 853, in _request_authentication
auth_packet = self._read_packet()
File “/opt/seatable/seatable-server-latest/dtable-web/thirdpart/pymysql/connections.py”, line 676, in _read_packet
packet.raise_for_error()
File “/opt/seatable/seatable-server-latest/dtable-web/thirdpart/pymysql/protocol.py”, line 223, in raise_for_error
err.raise_mysql_exception(self._data)
File “/opt/seatable/seatable-server-latest/dtable-web/thirdpart/pymysql/err.py”, line 107, in raise_mysql_exception
raise errorclass(errno, errval)
pymysql.err.OperationalError: (1049, “Unknown database ‘dtable_db’”)

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
File “manage.py”, line 10, in
execute_from_command_line(sys.argv)
File “/opt/seatable/seatable-server-latest/dtable-web/thirdpart/django/core/management/init.py”, line 364, in execute_from_command_line
utility.execute()
File “/opt/seatable/seatable-server-latest/dtable-web/thirdpart/django/core/management/init.py”, line 356, in execute
self.fetch_command(subcommand).run_from_argv(self.argv)
File “/opt/seatable/seatable-server-latest/dtable-web/thirdpart/django/core/management/base.py”, line 283, in run_from_argv
self.execute(*args, **cmd_options)
File “/opt/seatable/seatable-server-latest/dtable-web/thirdpart/django/core/management/base.py”, line 327, in execute
self.check()
File “/opt/seatable/seatable-server-latest/dtable-web/thirdpart/django/core/management/base.py”, line 359, in check
include_deployment_checks=include_deployment_checks,
File “/opt/seatable/seatable-server-latest/dtable-web/thirdpart/django/core/management/base.py”, line 346, in _run_checks
return checks.run_checks(**kwargs)
File “/opt/seatable/seatable-server-latest/dtable-web/thirdpart/django/core/checks/registry.py”, line 81, in run_checks
new_errors = check(app_configs=app_configs)
File “/opt/seatable/seatable-server-latest/dtable-web/thirdpart/django/core/checks/model_checks.py”, line 30, in check_all_models
errors.extend(model.check(**kwargs))
File “/opt/seatable/seatable-server-latest/dtable-web/thirdpart/django/db/models/base.py”, line 1284, in check
errors.extend(cls._check_fields(**kwargs))
File “/opt/seatable/seatable-server-latest/dtable-web/thirdpart/django/db/models/base.py”, line 1359, in _check_fields
errors.extend(field.check(**kwargs))
File “/opt/seatable/seatable-server-latest/dtable-web/thirdpart/django/db/models/fields/init.py”, line 913, in check
errors = super(AutoField, self).check(**kwargs)
File “/opt/seatable/seatable-server-latest/dtable-web/thirdpart/django/db/models/fields/init.py”, line 219, in check
errors.extend(self._check_backend_specific_checks(**kwargs))
File “/opt/seatable/seatable-server-latest/dtable-web/thirdpart/django/db/models/fields/init.py”, line 322, in _check_backend_specific_checks
return connections[db].validation.check_field(self, **kwargs)
File “/opt/seatable/seatable-server-latest/dtable-web/thirdpart/django/db/backends/mysql/validation.py”, line 49, in check_field
field_type = field.db_type(self.connection)
File “/opt/seatable/seatable-server-latest/dtable-web/thirdpart/django/db/models/fields/init.py”, line 644, in db_type
return connection.data_types[self.get_internal_type()] % data
File “/opt/seatable/seatable-server-latest/dtable-web/thirdpart/django/utils/functional.py”, line 35, in get
res = instance.dict[self.name] = self.func(instance)
File “/opt/seatable/seatable-server-latest/dtable-web/thirdpart/django/db/backends/mysql/base.py”, line 174, in data_types
if self.features.supports_microsecond_precision:
File “/opt/seatable/seatable-server-latest/dtable-web/thirdpart/django/utils/functional.py”, line 35, in get
res = instance.dict[self.name] = self.func(instance)
File “/opt/seatable/seatable-server-latest/dtable-web/thirdpart/django/db/backends/mysql/features.py”, line 53, in supports_microsecond_precision
return self.connection.mysql_version >= (5, 6, 4) and Database.version_info >= (1, 2, 5)
File “/opt/seatable/seatable-server-latest/dtable-web/thirdpart/django/utils/functional.py”, line 35, in get
res = instance.dict[self.name] = self.func(instance)
File “/opt/seatable/seatable-server-latest/dtable-web/thirdpart/django/db/backends/mysql/base.py”, line 385, in mysql_version
with self.temporary_connection() as cursor:
File “/usr/lib/python3.6/contextlib.py”, line 81, in enter
return next(self.gen)
File “/opt/seatable/seatable-server-latest/dtable-web/thirdpart/django/db/backends/base/base.py”, line 591, in temporary_connection
cursor = self.cursor()
File “/opt/seatable/seatable-server-latest/dtable-web/thirdpart/django/db/backends/base/base.py”, line 254, in cursor
return self._cursor()
File “/opt/seatable/seatable-server-latest/dtable-web/thirdpart/django/db/backends/base/base.py”, line 229, in _cursor
self.ensure_connection()
File “/opt/seatable/seatable-server-latest/dtable-web/thirdpart/django/db/backends/base/base.py”, line 213, in ensure_connection
self.connect()
File “/opt/seatable/seatable-server-latest/dtable-web/thirdpart/django/db/utils.py”, line 94, in exit
six.reraise(dj_exc_type, dj_exc_value, traceback)
File “/opt/seatable/seatable-server-latest/dtable-web/thirdpart/django/utils/six.py”, line 685, in reraise
raise value.with_traceback(tb)
File “/opt/seatable/seatable-server-latest/dtable-web/thirdpart/django/db/backends/base/base.py”, line 213, in ensure_connection
self.connect()
File “/opt/seatable/seatable-server-latest/dtable-web/thirdpart/django/db/backends/base/base.py”, line 189, in connect
self.connection = self.get_new_connection(conn_params)
File “/opt/seatable/seatable-server-latest/dtable-web/thirdpart/django/db/backends/mysql/base.py”, line 274, in get_new_connection
conn = Database.connect(**conn_params)
File “/opt/seatable/seatable-server-latest/dtable-web/thirdpart/pymysql/init.py”, line 94, in Connect
return Connection(*args, **kwargs)
File “/opt/seatable/seatable-server-latest/dtable-web/thirdpart/pymysql/connections.py”, line 327, in init
self.connect()
File “/opt/seatable/seatable-server-latest/dtable-web/thirdpart/pymysql/connections.py”, line 588, in connect
self._request_authentication()
File “/opt/seatable/seatable-server-latest/dtable-web/thirdpart/pymysql/connections.py”, line 853, in _request_authentication
auth_packet = self._read_packet()
File “/opt/seatable/seatable-server-latest/dtable-web/thirdpart/pymysql/connections.py”, line 676, in _read_packet
packet.raise_for_error()
File “/opt/seatable/seatable-server-latest/dtable-web/thirdpart/pymysql/protocol.py”, line 223, in raise_for_error
err.raise_mysql_exception(self._data)
File “/opt/seatable/seatable-server-latest/dtable-web/thirdpart/pymysql/err.py”, line 107, in raise_mysql_exception
raise errorclass(errno, errval)
django.db.utils.OperationalError: (1049, “Unknown database ‘dtable_db’”)

请问是否有解决方案,谢谢!

1 个赞

我在群晖上部署也报错了:
Start container seatable-seatable1 failed: {“message”:“OCI runtime create failed: container_linux.go:345: starting container process caused “process_linux.go:430: container init caused \“rootfs_linux.go:59: mounting \\\”/volume3/Database/docker-compose.yml\\\” to rootfs \\\”/volume3/@docker/aufs/mnt/fdc20628f732fe9becc1a20f9914827cedc3db54060612670e36d2be47dff65d\\\" at \\\"/volume3/@docker/aufs/mnt/fdc20628f732fe9becc1a20f9914827cedc3db54060612670e36d2be47dff65d/opt/seatable\\\" caused \\\“not a directory\\\”\"": unknown: Are you trying to mount a directory onto a file (or vice-versa)? Check if the specified host path exists and is the expected type"}.