From 863861e307252309450d7b1ea744dbcbda0140f2 Mon Sep 17 00:00:00 2001 From: Shahed Nasser Date: Wed, 18 Jun 2025 11:28:59 +0300 Subject: [PATCH] docs: added cloud s3 documentation (#12762) * docs: added cloud s3 documentation * fixes --- www/apps/cloud/app/redis/page.mdx | 4 +++ www/apps/cloud/app/s3/page.mdx | 47 +++++++++++++++++++++++++ www/apps/cloud/generated/edit-dates.mjs | 3 +- www/apps/cloud/generated/sidebar.mjs | 8 +++++ www/apps/cloud/sidebar.mjs | 5 +++ 5 files changed, 66 insertions(+), 1 deletion(-) create mode 100644 www/apps/cloud/app/s3/page.mdx diff --git a/www/apps/cloud/app/redis/page.mdx b/www/apps/cloud/app/redis/page.mdx index 2f334856a3..f4ccae7eb5 100644 --- a/www/apps/cloud/app/redis/page.mdx +++ b/www/apps/cloud/app/redis/page.mdx @@ -33,6 +33,10 @@ If you're using a Medusa version before v2.7.0, [contact support](#) for assista +### Access Redis Configurations + +Since Cloud is a managed service, you can't directly access your Redis instance or its configurations. Cloud also doesn't expose the Redis instance connection or configuration details. + ### Override Redis Configurations If you need to customize the Redis configurations for any of the Redis modules and providers, you must host and manage your own Redis instance externally. diff --git a/www/apps/cloud/app/s3/page.mdx b/www/apps/cloud/app/s3/page.mdx new file mode 100644 index 0000000000..557005383e --- /dev/null +++ b/www/apps/cloud/app/s3/page.mdx @@ -0,0 +1,47 @@ +export const metadata = { + title: `S3 Storage`, +} + +# {metadata.title} + +In this guide, you'll learn about the managed S3 storage service that Cloud provides as part of your project environments. + +## Managed S3 Storage Service + +Cloud offers a managed S3 storage service for your project environments. Each environment has its own dedicated S3 bucket that is automatically provisioned when the environment is created. + +So, when you create a new project, Cloud creates a production S3 bucket for the production environment. If you create a staging environment, Cloud creates a separate S3 bucket for that environment as well. + +By default, the S3 bucket is private, but the files you upload to the bucket are publicly accessible. This is necessary for serving product images and other assets in your Medusa application. + +![Diagram showcasing S3 isolation between environments](https://res.cloudinary.com/dza7lstvk/image/upload/v1750230909/Cloud/s3-cloud_smrtfc.jpg) + +--- + +## Configured S3 File Module Provider + +Cloud automatically configures your Medusa application to use the [S3 File Module Provider](!resources!/infrastructure-modules/file/s3). + +So, you don't need to configure the S3 File Module Provider or set up S3 manually. Also, if you have the S3 File Module Provider configured in `medusa-config.ts`, remove it to avoid conflicts. + + + +If you're using a Medusa version before v2.7.0, [contact support](#) for assistance in configuring the S3 File Module Provider. + + + +### Access S3 Configurations + +Since Cloud is a managed service, you can't directly access your S3 bucket or its configurations. Cloud also doesn't expose the S3 bucket connection or configuration details. + +### Override S3 Configurations + +If you need to override the default S3 configurations, such as changing public access to assets, you can do so by setting up and managing your own S3 bucket externally. + +Then, configure the S3 File Module Provider in your `medusa-config.ts` file to connect to your external S3 instance. Refer to the [S3 File Module Provider documentation](!resources!/infrastructure-modules/file/s3) for more details on how to configure it. + + + +To set the connection options of your external S3 instance, refer to the [Environments](../environments/page.mdx#add-environment-variables) guide to learn how to add environment variables. You can then use these variables in your `medusa-config.ts` file to connect to your S3 instance. + + \ No newline at end of file diff --git a/www/apps/cloud/generated/edit-dates.mjs b/www/apps/cloud/generated/edit-dates.mjs index f8c0262f28..3291e7caa1 100644 --- a/www/apps/cloud/generated/edit-dates.mjs +++ b/www/apps/cloud/generated/edit-dates.mjs @@ -7,5 +7,6 @@ export const generatedEditDates = { "app/organizations/page.mdx": "2025-06-17T10:48:50.969Z", "app/notifications/page.mdx": "2025-06-17T12:29:18.819Z", "app/database/page.mdx": "2025-06-17T14:34:57.104Z", - "app/redis/page.mdx": "2025-06-18T06:50:30.705Z" + "app/redis/page.mdx": "2025-06-18T06:50:30.705Z", + "app/s3/page.mdx": "2025-06-18T07:16:14.453Z" } \ No newline at end of file diff --git a/www/apps/cloud/generated/sidebar.mjs b/www/apps/cloud/generated/sidebar.mjs index 3707ffe3d1..d70ed84576 100644 --- a/www/apps/cloud/generated/sidebar.mjs +++ b/www/apps/cloud/generated/sidebar.mjs @@ -77,6 +77,14 @@ export const generatedSidebars = [ "title": "Redis", "path": "/redis", "children": [] + }, + { + "loaded": true, + "isPathHref": true, + "type": "link", + "title": "S3", + "path": "/s3", + "children": [] } ] }, diff --git a/www/apps/cloud/sidebar.mjs b/www/apps/cloud/sidebar.mjs index e74d5cb0fc..d9d613b315 100644 --- a/www/apps/cloud/sidebar.mjs +++ b/www/apps/cloud/sidebar.mjs @@ -54,6 +54,11 @@ export const sidebar = [ title: "Redis", path: "/redis", }, + { + type: "link", + title: "S3", + path: "/s3", + }, ], }, {