Comments (6)
Got it to work, I needed the storage.buckets.get
permission in order to determine the bucket region.
from hedgedoc.
I written a guide for it but I'm not 100% sure where to place it in the develop
branch.
For 1.x there was a page with explanation about normal AWS S3 but for 2.x this page has been removed? Any suggestions as to where I could place it?
from hedgedoc.
HedgeDoc (1.x + upcoming 2.0) supports an S3 media backend. While S3 can be used with self-hosted tools like MinIO or cloud-services like AWS, most other providers provide a S3 interface too.
Google Cloud Storage can be used via the S3 Endpoint https://storage.googleapis.com.
To avoid having to maintain many different integrations, I don't see the requirement to add an extra GCS client for now.
References:
- https://cloud.google.com/storage/docs/interoperability
- https://dzlab.github.io/gcp/2022/02/26/gs-with-s3-sdk/
from hedgedoc.
Thanks for your reply!
HedgeDoc (1.x + upcoming 2.0) supports an S3 media backend. While S3 can be used with self-hosted tools like MinIO or cloud-services like AWS, most other providers provide a S3 interface too. Google Cloud Storage can be used via the S3 Endpoint storage.googleapis.com.
I wasn't aware that Google offered an interoperability method for S3. Definitely something worth looking into (and documenting if I manage to get it working)
For some reason I'm now getting an "Access Denied" error when adding an image in a HedgeDoc document whereas it works fine with a simple Python test script that uses boto3 to uploads a file to the bucket using the same credentials.
So it seems that the credentials and S3 interoperability are working fine, except not via HD.
To avoid having to maintain many different integrations, I don't see the requirement to add an extra GCS client for now.
I actually worked on that yesterday after opening this issue. I have a working implementation available for which I could open a PR.
But if it works via the S3 interoperability method it wouldn't require a separate integration.
from hedgedoc.
Happy to hear that it worked! I'm going to change this issue then towards documenting the usage of GCS with HedgeDoc.
from hedgedoc.
Having a guide to that seems great! As you seemingly tested it with HedgeDoc 1.x, and HedgeDoc 2.0 isn't released yet (still some things to finish up), you could put it into the master
branch (docs/content/guides
). The docs/mkdocs.yml
file also needs a reference to your new guide to include it into the navigation.
For HedgeDoc 2, we'll transfer and (if necessary) adapt the guides later.
from hedgedoc.
Related Issues (20)
- Implement support to serve media from private buckets HOT 1
- Can't paste image HOT 4
- Custom emojis HOT 1
- Store user-provided access tokens in CredentialsContainer
- Offer automatic "system" light/dark theme switching using `prefers-color-scheme` HOT 1
- Edit button redirects to wrong link HOT 2
- Re-add buttons for switching editor mode between View/Both/Edit
- Codeblocks syntax highlighting and background
- Documentation for project setup HOT 5
- support rendering csv codeblocks as tables HOT 1
- Kanban board renderer HOT 2
- Wider tables in view-only mode HOT 1
- Improve standard emoji support HOT 2
- Double-click to jump to source HOT 1
- keyboard support: [tab] and overlays
- Share URL randomly crashes HOT 4
- Adapt loading screen to respect theme (light/dark) HOT 1
- Support AsciiDoc as markup language in the editor HOT 1
- Save preferred editor keymap (or allow specifying a default) HOT 1
- image upload fails sometimes HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from hedgedoc.