Scale up as you grow — whether you're running one virtual machine or ten thousand.

From GPU-powered inference and Kubernetes to managed databases and storage, get everything you need to build, scale, and deploy intelligent applications.

This textbox defaults to using Markdown to format your answer.
You can type !ref in this text area to quickly search our full set of tutorials, documentation & marketplace offerings and insert the link!
These answers are provided by our Community. If you find them useful, show some love by clicking the heart. If you run into issues leave a comment, or add your own answer to help others.
I’m struggling with the same issue here. Does anyone from DO have any advice?
I have the same issue. I can’t just substitute the URL like they say in the documentation.
I got SignatureMismatch
I’ll just chime in here that our team got this working using this pre-signer AWS S3 package
And code like:
const bucketParams: PutObjectCommandInput = {
Bucket: this.digitalOceanSpace,
Key: generateFilePath(metadata),
};
return await getSignedUrl(this.client, new GetObjectCommand(bucketParams), {
expiresIn: 15 * 60,
});
To generate the pre-signed download URL with a URL like https://SPACE-NAME.REGION.digitaloceanspaces.com/…
Then were able to swap the URL domain (just using a RegEx) to https://SUBDOMAIN.DOMAIN.com/…
And it worked just fine. Our custom CDN domain was set up using an external DNS provider, and the certs created using certbot and added manually via the DO UI.
Hope this helps anyone else!