如果您使用S3对象存储作为后端存储,可参考此文档进行配置:
存储准备
SeaTable 可以使用 S3 桶来存储以下类型的数据:
- 基础快照
- 图片和文件的内容
- 头像图片
共需创建 5 个 bucket:
- seafile 相关:cluster-seatable-commit、cluster-seatable-fs、cluster-seatable-block
- dtable-storage-server 相关:cluster-seatable-storage
- avatars 相关: cluster-seatable-avatar
存储配置
由于目前 seatable 还不支持通过环境变量配置 S3 存储信息,如果需要配置 s3,可参考 S3存储,且完全移除 dtable_web_settings.py 中 PLUGINS_REPO_ID = 'xxx' 这一行,在重启/关闭一次使配置生效。
基础快照的配置
基础快照的存储在dtable-storage-server.conf中配置。
默认情况下,[storage backend]部分包含type = filesystem,将所有基础快照存储在/opt/seatable-server/seatable/storage-data文件夹中。要使用 S3,将类型转换为 type = s3。如果你使用的是兼容 S3 的服务,可以使用下面的配置选项。
[storage backend]
type = s3
bucket = ...
host = ...
use_https = true
key_id =
key =
path_style_request = true
use_v4_signature = true
aws_region =
AWS 只需要几个设置。key_id和key用于提供 S3 认证。您可以在 AWS 账户页面的安全凭据部分找到key_id和key。
[storage backend]
type = s3
bucket = ...
key_id =
key =
用于文件和图片存储的配置
S3 文件和图片列的对象存储配置在 /opt/seatable-server/seatable/conf/seafile.conf中。你需要新增三个部分:
- [commit_object_backend]
- [fs_object_backend]
- [block_backend]
#AWS
[commit_object_backend]
name = s3
bucket = my-commit-objects
key_id = your-key-id
key = your-secret-key
use_v4_signature = true
aws_region = eu-central-1
host = s3.us-east-1.amazonaws.com
[fs_object_backend]
name = s3
bucket = my-fs-objects
key_id = your-key-id
key = your-secret-key
use_v4_signature = true
aws_region = eu-central-1
host =
[block_backend]
name = s3
bucket = my-block-objects
key_id = your-key-id
key = your-secret-key
use_v4_signature = true
aws_region = eu-central-1
host =
兼容的S3配置
[commit_object_backend]
name = s3
bucket = my-commit-objects
key_id = your-key-id
key = your-secret-key
use_v4_signature = true
aws_region = eu-central-1
host = s3.us-east-1.amazonaws.com
[fs_object_backend]
name = s3
bucket = my-fs-objects
key_id = your-key-id
key = your-secret-key
use_v4_signature = true
aws_region = eu-central-1
host =
[block_backend]
name = s3
bucket = my-block-objects
key_id = your-key-id
key = your-secret-key
use_v4_signature = true
aws_region = eu-central-1
host =
用于头像存储的配置
头像图片的存储方式是dtable_web_settings.py配置的。目前这些选项可用,并映射到 django-storage 设置中:
SeaTable Configuration
Django Storage Setting
S3_ENDPOINT_URL
AWS_S3_ENDPOINT_URL
S3_REGION
AWS_S3_REGION_NAME
S3_ACCESS_KEY_ID
AWS_S3_ACCESS_KEY_ID
S3_SECRET_ACCESS_KEY
AWS_S3_ACCESS_KEY_ID
S3_BUCKET_NAME
AWS_STORAGE_BUCKET_NAME
AWS_S3_SIGNATURE_VERSION默认设置为 s3v4,无法配置。以下是一些如何配置 S3 桶用于头像的示例:
#AWS
AVATAR_FILE_STORAGE = 'django_s3_storage.storage.S3Storage'
S3_ENDPOINT_URL = 'https://s3.example.com'
S3_REGION = 'eu-west-1'
S3_ACCESS_KEY_ID = ''
S3_SECRET_ACCESS_KEY = ''
S3_BUCKET_NAME = ''
其他兼容的S3
AVATAR_FILE_STORAGE = 'django_s3_storage.storage.S3Storage'
S3_ENDPOINT_URL = 'https://sos-de-fra-1.exo.io'
S3_ACCESS_KEY_ID = ''
S3_SECRET_ACCESS_KEY = ''
S3_BUCKET_NAME = 'your-bucket-name'