strapi-provider-upload-gcp
v1.0.6
Published
Strapi v3 upload provider for Google Cloud Storage
Maintainers
Readme
Strapi Provider Upload GCP
A Strapi v3 upload provider for Google Cloud Storage.
Installation
npm install strapi-provider-upload-gcp
# or
yarn add strapi-provider-upload-gcpConfiguration
Add the provider configuration to your Strapi config file (./config/plugins.js):
module.exports = ({ env }) => ({
upload: {
provider: 'gcp',
providerOptions: {
bucketName: env('GCP_BUCKET_NAME'),
serviceAccount: env('GCP_SERVICE_ACCOUNT'), // Optional
baseUrl: env('GCP_BASE_URL'), // Optional
publicFiles: false, // Optional, default: false
},
},
});Environment Variables
Add these to your .env file:
GCP_BUCKET_NAME=your-bucket-name
GCP_SERVICE_ACCOUNT={"type":"service_account",...} # Optional
GCP_BASE_URL=https://cdn.example.com # OptionalProvider Options
| Option | Type | Required | Description |
|--------|------|----------|-------------|
| bucketName | string | Yes | The name of your GCP Storage bucket |
| serviceAccount | object/string | No | Service account credentials or key file path. If not provided, uses default credentials (e.g., Cloud Run service account) |
| baseUrl | string | No | Custom base URL for public files. If not provided, uses the default GCP Storage URL |
| publicFiles | boolean | No | Whether to make uploaded files public. Default: false |
Authentication
Option 1: Cloud Run Service Account (Recommended)
If your Strapi app is running on Google Cloud Run, you can omit the serviceAccount parameter. The provider will automatically use the Cloud Run service account credentials.
Make sure your Cloud Run service account has the necessary permissions:
Storage Object Admin(for full access)Storage Object Creator+Storage Object Viewer(for limited access)
Option 2: Service Account Key
- Go to Google Cloud Console
- Navigate to IAM & Admin → Service Accounts
- Create a service account or select an existing one
- Create a JSON key and download it
- Set the
serviceAccountoption to the path of the JSON file or the parsed object
Usage
Once configured, you can upload files through the Strapi admin panel or API. Files will be stored in your GCP Storage bucket.
Development
# Install dependencies
yarn install
# Run tests
yarn test
# Run tests in watch mode
yarn test:watchLicense
MIT
