ghost-storage-adapter-cos
v1.0.11
Published
A Tencent COS storage adapter for Ghost 1.x+
Downloads
41
Maintainers
Readme
Ghost storage adapter COS
A Tencent Cloud Object Storage (COS) adapter for Ghost 1.x+
This adapter allows Ghost CMS to store uploaded files in Tencent COS buckets instead of local storage, with support for private bucket access through Ghost's /images/ route.
Installation
npm install ghost-storage-adapter-cos
mkdir -p ./content/adapters/storage
cp -r ./node_modules/ghost-storage-adapter-cos ./content/adapters/storage/cosConfiguration
"storage": {
"active": "cos",
"cos": {
"secretId": "YOUR_SECRET_ID",
"secretKey": "YOUR_SECRET_KEY",
"region": "YOUR_COS_REGION",
"bucket": "YOUR_BUCKET_NAME",
"assetHost": "YOUR_OPTIONAL_CDN_URL (See note 1 below)",
"pathPrefix": "YOUR_OPTIONAL_BUCKET_SUBDIRECTORY",
"domain": "YOUR_OPTIONAL_CUSTOM_DOMAIN",
"protocol": "https:"
}
}Note 1: Be sure to include "//" or the appropriate protocol within your assetHost string/variable to ensure that your site's domain is not prepended to the CDN URL.
Note 2: If you're using a private bucket, Ghost will serve images through the /images/ route, allowing public access to private COS objects.
Via environment variables
GHOST_STORAGE_ADAPTER_COS_SECRET_ID
GHOST_STORAGE_ADAPTER_COS_SECRET_KEY
GHOST_STORAGE_ADAPTER_COS_REGION
GHOST_STORAGE_ADAPTER_COS_BUCKET
GHOST_STORAGE_ADAPTER_COS_ASSET_HOST // optional
GHOST_STORAGE_ADAPTER_COS_PATH_PREFIX // optional
GHOST_STORAGE_ADAPTER_COS_DOMAIN // optional
GHOST_STORAGE_ADAPTER_COS_PROTOCOL // optionalTencent COS Configuration
You'll need to configure a COS bucket and obtain the necessary credentials from the Tencent Cloud console.
COS Bucket Setup
Create a COS Bucket
- Log in to the Tencent Cloud Console
- Go to the COS service
- Create a new bucket in your preferred region
- Choose appropriate access permissions (public read for public websites, private for private buckets)
Get Credentials
- Go to CAM Console
- Create or use existing API keys to get your
SecretIdandSecretKey - These will be used as
secretIdandsecretKeyin your configuration
Bucket Configuration
- For private buckets: Ghost will serve images through
/images/route, allowing public access to private COS objects - For public buckets: Images can be accessed directly via COS URLs
- Configure CORS if you need cross-origin access
- For private buckets: Ghost will serve images through
CDN Setup (Optional)
If you want to use Tencent Cloud CDN:
Enable CDN
- Go to CDN service in Tencent Cloud Console
- Add your bucket domain as origin server
- Configure cache rules and HTTPS
Custom Domain
- If using a custom domain, configure it in COS bucket settings
- Update DNS to point to your CDN domain
- Use the CDN domain as
assetHostin your configuration
