1
0
Fork 0
mirror of https://github.com/Luzifer/preserve.git synced 2024-11-08 14:20:05 +00:00
preserve/README.md
Knut Ahlers 813b20970c
Add infos about storage provider
Signed-off-by: Knut Ahlers <knut@ahlers.me>
2021-02-23 14:17:22 +01:00

1.5 KiB

Go Report Card

Luzifer / preserve

preserve is a little HTTP server to preserve the presence of URLs.

Ever relied on an HTTP resource to be available and it vanished? Happened too often to me so I wrote a little tool to prevent URLs from vanishing: preserve.

Usage

After you've started preserve it will by default listen on port 3000 and you can start using it by prefixing the URL of the resource:

Lets say you want to ensure the image https://example.com/image.png does not vanish:

  • http://localhost:3000/https://example.com/image.png will fetch the resource once and then deliver it from the local cache
  • http://localhost:3000/latest/https://example.com/image.png will fetch the resource with every request until it gets unavailable and then serve it from local cache

This also works with parameters:

http://localhost:3000/https://pbs.twimg.com/media/somemediaid?format=jpg&name=4096x4096

Select Storage Provider

Local files

preserve \
  --listen=:3000 \
  --storage-provider=local \
  --storage-dir=/var/lib/preserve

Google Cloud Storage

preserve \
  --listen=:3000 \
  --storage-provider=gcs \
  --bucket-uri=gs://mybucket/prefix