Skip to content

exler/fileigloo

Repository files navigation

❄️ Small and simple online file sharing & pastebin

GitHub Test Workflow Status MIT License

Requirements

  • Go >= 1.20

Configuration

All configuration is done through environment variables or CLI flags.

Local storage

# Override storage provider
$ export STORAGE=local

# Provide directory where uploaded files should be stored
$ export UPLOAD_DIRECTORY=uploads/

Amazon S3

# Override storage provider
$ export STORAGE=s3

# Specify S3 bucket and region
$ export S3_BUCKET=storage-bucket
$ export S3_REGION=eu-central-1

# Specify AWS keys for accessing S3
$ export AWS_ACCESS_KEY=
$ export AWS_SECRET_KEY=

# Optionally, specify AWS session token for temporary credentials
$ export AWS_SESSION_TOKEN=

Cloudflare R2

Cloudflare R2 implements S3 API, so we use the s3 storage here as well.

# Override storage provider
$ export STORAGE=s3

# Specify R2 bucket
$ export S3_BUCKET=storage-bucket

# Region must be 'auto'
$ export S3_REGION=auto

# Specify R2 keys for accessing the bucket
$ export AWS_ACCESS_KEY=
$ export AWS_SECRET_KEY=

# Specify the bucket URL
$ export AWS_ENDPOINT_URL=https://${accountid}.r2.cloudflarestorage.com

Usage

Program usage

USAGE:
   fileigloo [global options] command [command options] [arguments...]

COMMANDS:
   version    Show current version
   runserver  Run web server
   files      Manage files in storage
   help, h    Shows a list of commands or help for one command

GLOBAL OPTIONS:
   --help, -h  show help

License

Copyright (c) 2021-2023 by Kamil Marut

Fileigloo is under the terms of the MIT License, following all clarifications stated in the license file.