These docs track the development branch (main). Latest release: v0.23.0.
Skip to content

Quick Start

Zero to a verified upload in a few minutes. This is the happy path — each step links to a page with the full detail.

1. Install

bash
brew install scttfrdmn/tap/cargoship
bash
go install github.com/scttfrdmn/cargoship/cmd/cargoship@latest

Verify it's on your PATH:

bash
cargoship --version

More options on the Install page.

2. Point it at AWS

CargoShip uses your standard AWS credentials (same as the AWS CLI). If you can run aws s3 ls, you're ready. If not:

bash
aws configure   # or set AWS_ACCESS_KEY_ID / AWS_SECRET_ACCESS_KEY / AWS_REGION

See AWS setup & credentials for the minimal IAM policy.

3. Upload a directory

bash
cargoship upload ./my-data s3://my-bucket/archives/

CargoShip scans the directory, compresses and shards it, uploads in parallel, and prints an upload ID (e.g. 20260721-a1b2c3) when it finishes. That ID is how you refer to the upload later.

TIP

Not sure what it'll cost first? Run cargoship estimate ./my-data before uploading.

4. Confirm it's really there

bash
cargoship info s3://my-bucket/archives/uploads/20260721-a1b2c3
cargoship verify s3://my-bucket/archives/uploads/20260721-a1b2c3

info shows the manifest summary; verify checks the archive against its recorded checksums.

5. Restore a file back

bash
cargoship restore s3://my-bucket/archives/uploads/20260721-a1b2c3 ./restored \
  --file path/inside/dataset.txt

If that file comes back byte-for-byte, you've proven the full round trip.

Next