diff --git a/doc/book/src/connect/cli.md b/doc/book/src/connect/cli.md index c78ed305..e5c4a495 100644 --- a/doc/book/src/connect/cli.md +++ b/doc/book/src/connect/cli.md @@ -3,6 +3,15 @@ CLI tools allow you to query the S3 API without too many abstractions. These tools are particularly suitable for debug, backups, website deployments or any scripted task that need to handle data. +| Name | Status | Note | +|------|--------|------| +| [Minio client](#minio-client-recommended) | ✅ | | +| [AWS CLI](#aws-cli) | ✅ | | +| [rclone](#rclone) | ✅ | | +| [s3cmd](#s3cmd) | ✅ | | +| [(Cyber)duck](#cyberduck--duck) | ✅ | | + + ## Minio client (recommended) Use the following command to set an "alias", i.e. define a new S3 server to be @@ -161,6 +170,102 @@ s3cmd get s3://my-bucket/hello.txt hello.txt ## Cyberduck & duck -TODO +Both Cyberduck (the GUI) and duck (the CLI) have a concept of "Connection Profiles" that contain some presets for a specific provider. +We wrote the following connection profile for Garage: +```xml + + + + + Protocol + s3 + Vendor + garage + Scheme + https + Description + GarageS3 + Default Hostname + 127.0.0.1 + Default Port + 4443 + Hostname Configurable + + Port Configurable + + Username Configurable + + Username Placeholder + Access Key ID (GK...) + Password Placeholder + Secret Key + Properties + + s3service.disable-dns-buckets=true + + Region + garage + Regions + + garage + + + +``` +*Note: If your garage instance is configured with vhost access style, you can remove `s3service.disable-dns-buckets=true`.* + +### Instructions for the GUI + +Copy the connection profile, and save it anywhere as `garage.cyberduckprofile`. +Then find this file with your file explorer and double click on it: Cyberduck will open a connection wizard for this profile. +Simply follow the wizard and you should be done! + +### Instuctions for the CLI + +To configure duck (Cyberduck's CLI tool), start by creating its folder hierarchy: + +``` +mkdir -p ~/.duck/profiles/ +``` + +Then, save the connection profile for Garage in `~/.duck/profiles/garage.cyberduckprofile`. +To set your credentials in `~/.duck/credentials`, use the following commands to generate the appropriate string: + +```bash +export AWS_ACCESS_KEY_ID="GK..." +export AWS_SECRET_ACCESS_KEY="..." +export HOST="s3.garage.localhost" +export PORT="4443" +export PROTOCOL="https" + +cat > ~/.duck/credentials <