@@ -156,3 +156,39 @@ var api = new ParseServer({
156156 filesAdapter: s3Adapter
157157})
158158```
159+ ### Usage with Digital Ocean Spaces
160+
161+ ```
162+ var S3Adapter = require("@parse/s3-files-adapter");
163+ var AWS = require("aws-sdk");
164+
165+ //Configure Digital Ocean Spaces EndPoint
166+ const spacesEndpoint = new AWS.Endpoint(process.env.SPACES_ENDPOINT);
167+ var s3Options = {
168+ bucket: process.env.SPACES_BUCKET_NAME,
169+ baseUrl: process.env.SPACES_BASE_URL,
170+ region: process.env.SPACES_REGION,
171+ directAccess: true,
172+ globalCacheControl: "public, max-age=31536000",
173+ bucketPrefix: process.env.SPACES_BUCKET_PREFIX,
174+ s3overrides: {
175+ accessKeyId: process.env.SPACES_ACCESS_KEY,
176+ secretAccessKey: process.env.SPACES_SECRET_KEY,
177+ endpoint: spacesEndpoint
178+ }
179+ };
180+
181+ var s3Adapter = new S3Adapter(s3Options);
182+
183+ var api = new ParseServer({
184+ databaseURI: process.env.DATABASE_URI || "mongodb://localhost:27017/dev",
185+ cloud: process.env.CLOUD_CODE_MAIN || __dirname + "/cloud/main.js",
186+ appId: process.env.APP_ID || "myAppId",
187+ masterKey: process.env.MASTER_KEY || "",
188+ serverURL: process.env.SERVER_URL || "http://localhost:1337/parse",
189+ logLevel: process.env.LOG_LEVEL || "info",
190+ allowClientClassCreation: false,
191+ filesAdapter: s3Adapter,
192+ }
193+ });
194+ ```
0 commit comments