跳到主要内容

将 Amazon S3 存储桶连接为 ONLYOFFICE 文档的缓存

按照以下步骤将 Amazon S3 存储桶连接为 ONLYOFFICE 文档的缓存。

  1. 登录 AWS 管理控制台并打开 Amazon S3 控制台。点击创建存储桶按钮。指定一个唯一的存储桶名称并保存存储桶。

  2. 我们建议今后创建一个新的 IAM 用户。

  3. 点击右上角的用户名,然后转到安全凭证。展开访问密钥(访问密钥 ID 和秘密访问密钥)部分。点击创建访问密钥按钮。在打开的表格中,复制访问密钥字段中的密钥。点击显示按钮以显示秘密访问密钥并复制它。或者,点击右下角的下载 .csv 文件按钮,将密钥保存到您的硬盘上。

    ONLYOFFICE Docs - Amazon

    然后,进入访问管理部分并允许访问存储桶。点击策略,然后点击创建策略按钮。切换到 JSON 选项卡并添加以下代码:

    {
    "Version": "2012-10-17",
    "Statement": [
    {
    "Sid": "Stmt1492520443000",
    "Effect": "Allow",
    "Action": [
    "s3:ListAllMyBuckets"
    ],
    "Resource": [
    "arn:aws:s3:::*"
    ]
    },
    {
    "Sid": "Stmt1492520492000",
    "Effect": "Allow",
    "Action": [
    "s3:GetBucketLocation",
    "s3:ListBucket",
    "s3:ListBucketMultipartUploads"
    ],
    "Resource": "arn:aws:s3:::my-s3-bucketname"
    },
    {
    "Sid": "Stmt1492521245000",
    "Effect": "Allow",
    "Action": [
    "s3:AbortMultipartUpload",
    "s3:GetObject",
    "s3:ListBucket",
    "s3:ListMultipartUploadParts",
    "s3:PutObject",
    "s3:PutObjectAcl"
    ],
    "Resource": "arn:aws:s3:::my-s3-bucketname/*"
    }
    ]
    }

    将 my-s3-bucketname 替换为您的实际存储桶名称。然后完成其余步骤以保存新策略。

  4. 在 Amazon S3 控制台中,点击您的存储桶名称。选择权限。在跨域资源共享 (CORS) 部分,点击编辑并添加以下代码:

    [
    {
    "AllowedHeaders": [
    "*"
    ],
    "AllowedMethods": [
    "GET",
    "HEAD"
    ],
    "AllowedOrigins": [
    "https://documentserver_address"
    ],
    "ExposeHeaders": []
    }
    ]

    将 https://documentserver_address 替换为您的实际 ONLYOFFICE 文档地址。保存设置。

  5. 打开 ONLYOFFICE 文档配置文件:/etc/onlyoffice/documentserver/default.json

    备注

    如果您在 default.json 文件中更改参数,所有更改将在 ONLYOFFICE 文档更新或 Docker 容器重启后丢失。为了确保您的更改在更新后仍然有效,请编辑 /etc/onlyoffice/documentserver/local.json 文件。

    添加连接到存储桶的设置:

    "storage": {
    "name": "storage-s3",
    "region": "us-east-1",
    "endpoint": "https://s3.us-east-1.amazonaws.com/",
    "bucketName": "my-s3-bucketname",
    "storageFolderName": "files",
    "urlExpires": 604800,
    "accessKeyId": "***",
    "secretAccessKey": "***",
    "sslEnabled": true,
    "s3ForcePathStyle": false,
    "externalHost": "",
    "useDirectStorageUrls": false
    },

    指定您的实际存储桶名称、访问密钥 ID 和秘密访问密钥。保存更改。

  6. 重启 ONLYOFFICE 文档服务:

    DEB/RPM:

    systemctl restart ds-converter ds-docservice

    Docker:

    sudo docker exec <CONTAINER_ID> supervisorctl restart ds:converter ds:docservice

    Windows PowerShell:

    Restart-Service DsConverterSvc, DsDocServiceSvc