Skip to content

Commit

Permalink
Merge pull request #117 from damian-murphy/main
Browse files Browse the repository at this point in the history
Added documentation to reflect fix found for issue bookwyrm-social/bookwyrm#2323
  • Loading branch information
hughrun authored Jan 9, 2024
2 parents 7521e2c + b70f083 commit 80310db
Showing 1 changed file with 22 additions and 3 deletions.
25 changes: 22 additions & 3 deletions content/running_bookwyrm/external-storage.md
Original file line number Diff line number Diff line change
Expand Up @@ -38,12 +38,18 @@ Edit your `.env` file by uncommenting the following lines:
- `AWS_ACCESS_KEY_ID`: your access key ID
- `AWS_SECRET_ACCESS_KEY`: your secret access key
- `AWS_STORAGE_BUCKET_NAME`: your bucket name
- `AWS_S3_REGION_NAME`: e.g. `"eu-west-1"` for AWS, `"fr-par"` for Scaleway or `"nyc3"` for Digital Ocean
- `AWS_S3_REGION_NAME`: e.g. `"eu-west-1"` for AWS, `"fr-par"` for Scaleway, `"nyc3"` for Digital Ocean or `"cluster-id"` for Linode

If your S3-compatible service is Amazon AWS, you should be set. If not, you’ll have to uncomment the following lines:

- `AWS_S3_CUSTOM_DOMAIN`: the domain that will serve the assets, e.g. `"example-bucket-name.s3.fr-par.scw.cloud"` or `"${AWS_STORAGE_BUCKET_NAME}.${AWS_S3_REGION_NAME}.digitaloceanspaces.com"`
- `AWS_S3_ENDPOINT_URL`: the S3 API endpoint, e.g. `"https://s3.fr-par.scw.cloud"` or `"https://${AWS_S3_REGION_NAME}.digitaloceanspaces.com"`
- `AWS_S3_CUSTOM_DOMAIN`: the domain that will serve the assets:
- for Scaleway, e.g. `"example-bucket-name.s3.fr-par.scw.cloud"`
- for Digital Ocean, e.g. `"${AWS_STORAGE_BUCKET_NAME}.${AWS_S3_REGION_NAME}.digitaloceanspaces.com"`
- for Linode Object Storage, this should be set to the cluster domain, e.g. `"eu-central-1.linodeobjects.com"`
- `AWS_S3_ENDPOINT_URL`: the S3 API endpoint:
- for Scaleway, e.g. `"https://s3.fr-par.scw.cloud"`
- for Digital Ocean, e.g. `"https://${AWS_S3_REGION_NAME}.digitaloceanspaces.com"`
- For Linode Object Storage, set this to the cluster domain, e.g. `"https://eu-central-1.linodeobjects.com"`

### Copying local media to external storage

Expand Down Expand Up @@ -112,6 +118,19 @@ Then, run the following command:

No output means it should be good.

### Additional Step for Linode Object Storage Users

For Linode, you now need to make an alteration to the `.env` to ensure that the generated links to your storage objects are correct. If you miss this step, all the links to images and static files (like css) will be broken.
To fix this, you need to now insert the bucket-name into the `AWS_S3_CUSTOM_DOMAIN`, for example if your `AWS_STORAGE_BUCKET_NAME` is `"my-bookwyrm-bucket"`, then set it to:

```
AWS_S3_CUSTOM_DOMAIN=my-bookwyrm-bucket.cluster-id.linodeobjects.com
```

*Note*: From this point on, any bw-dev copy or sync commands will place objects into an incorrect location in your object store, so if you need to use them, revert to the previous setting, run and re-enable.

### New Instance

If you are starting a new BookWyrm instance, you can go back to the setup instructions right now. If not, keep on reading.

### Restarting your instance
Expand Down

0 comments on commit 80310db

Please sign in to comment.