diff options
author | Alex <alex@adnab.me> | 2022-02-07 11:51:12 +0100 |
---|---|---|
committer | Alex <alex@adnab.me> | 2022-02-07 11:51:12 +0100 |
commit | 1c0ba930b8d6aa5d97e6942852240861e6ab9bed (patch) | |
tree | cddc9af5fc2378c76fe5ef6306f807e27648b7a7 /doc/book/connect/websites.md | |
parent | 45d6d377d2011d8fb4ceb13bb4584df97c458525 (diff) | |
download | garage-1c0ba930b8d6aa5d97e6942852240861e6ab9bed.tar.gz garage-1c0ba930b8d6aa5d97e6942852240861e6ab9bed.zip |
Reorganize documentation for new website (#213)
This PR should be merged after the new website is deployed.
- [x] Rename files
- [x] Add front matter section to all `.md` files in the book (necessary for Zola)
- [x] Change all internal links to use Zola's linking system that checks broken links
- [x] Some updates to documentation contents and organization
Co-authored-by: Alex Auvolat <alex@adnab.me>
Reviewed-on: https://git.deuxfleurs.fr/Deuxfleurs/garage/pulls/213
Co-authored-by: Alex <alex@adnab.me>
Co-committed-by: Alex <alex@adnab.me>
Diffstat (limited to 'doc/book/connect/websites.md')
-rw-r--r-- | doc/book/connect/websites.md | 81 |
1 files changed, 81 insertions, 0 deletions
diff --git a/doc/book/connect/websites.md b/doc/book/connect/websites.md new file mode 100644 index 00000000..3f62c9a6 --- /dev/null +++ b/doc/book/connect/websites.md @@ -0,0 +1,81 @@ ++++ +title = "Websites (Hugo, Jekyll, Publii...)" +weight = 10 ++++ + +Garage is also suitable to host static websites. +While they can be deployed with traditional CLI tools, some static website generators have integrated options to ease your workflow. + +## Hugo + +Add to your `config.toml` the following section: + +```toml +[[deployment.targets]] + URL = "s3://<bucket>?endpoint=<endpoint>&disableSSL=<bool>&s3ForcePathStyle=true®ion=garage" +``` + +For example: + +```toml +[[deployment.targets]] + URL = "s3://my-blog?endpoint=localhost:9000&disableSSL=true&s3ForcePathStyle=true®ion=garage" +``` + +Then inform hugo of your credentials: + +```bash +export AWS_ACCESS_KEY_ID=GKxxx +export AWS_SECRET_ACCESS_KEY=xxx +``` + +And finally build and deploy your website: + +```bsh +hugo +hugo deploy +``` + +*External links:* + - [gocloud.dev > aws > Supported URL parameters](https://pkg.go.dev/gocloud.dev/aws?utm_source=godoc#ConfigFromURLParams) + - [Hugo Documentation > hugo deploy](https://gohugo.io/hosting-and-deployment/hugo-deploy/) + +## Publii + +It would require a patch either on Garage or on Publii to make both systems work. + +Currently, the proposed workaround is to deploy your website manually: + - On the left menu, click on Server, choose Manual Deployment (the logo looks like a compressed file) + - Set your website URL, keep Output type as "Non-compressed catalog" + - Click on Save changes + - Click on Sync your website (bottom left of the app) + - On the new page, click again on Sync your website + - Click on Get website files + - You need to synchronize the output folder you see in your file explorer, we will use minio client. + +Be sure that you [configured minio client](@/documentation/connect/cli.md#minio-client-recommended). + +Then copy this output folder + +```bash +mc mirror --overwrite output garage/my-site +``` + +## Generic (eg. Jekyll) + +Some tools do not support sending to a S3 backend but output a compiled folder on your system. +We can then use any CLI tool to upload this content to our S3 target. + +First, start by [configuring minio client](@/documentation/connect/cli.md#minio-client-recommended). + +Then build your website: + +```bash +jekyll build +``` + +And copy jekyll's output folder on S3: + +```bash +mc mirror --overwrite _site garage/my-site +``` |