OwnBox is a self-hosted ligth-weight cloud storage which provides fast transportation of data with its own CLI client
- Backend Core: Go + Gin + gRPC
github.com/gin-gonic/gin - Auth Core: Go + gRPC
google.golang.org/grpc - CLI Core: Go +
net/http - Database: PostgreSQL + pgx
github.com/jackc/pgx/v5 - Cache: Redis
github.com/redis/go-redis/v9 - Storage: MinIO
github.com/minio/minio-go/v7 - Encryption: bcrypt + MD5
golang.org/x/crypto/bcrypt - Observability: email alerting
github.com/jordan-wright/email - Monitoring: Prometheus + Grafana
github.com/prometheus/client_golang/prometheus - Cli: Cobra
github.com/spf13/cobra
- Clone my repo to your server
git clone https://github.com/FlowRamAlltimes/OwnBox- Download docker and docker compose if doesn't exist
- Go to workdir
cd backend- Run application with docker compose:
docker compose up -d --build- Download latest release for your architecture(x86, arm)
- Set Server ip and port in server.json configuration
- Run CLI
./ownboxStarts the CLI
Usage:
ownbox [command]
Available Commands:
completion Generate the autocompletion script for the specified shell
get Here you can download data from OwnBox
help Help about any command
login creates account
rm removes file by hash
rmacc removes account
upload Uploads your file
Flags:
-h, --help help for ownbox
Use "ownbox [command] --help" for more information about a command.
- any bugs
- any logic mistakes