abyss/README.md
2024-08-19 20:00:46 -03:00

1.4 KiB

abyss

abyss is a basic single user http server made for uploading files (logs, images) and then sharing them to the internet

note: this is a project made for learning purposes, you should use other more mature projects if running in production

table of contents

running:

  • change URL env variable to your end url. example: URL=paste.abyss.dev if you your files will be accessed through paste.abyss.dev/name-of-file
  • add your password (key) to .key in the root directory - it will be used for authentication for uploads.

docker

  • to run with docker, you can use either docker compose or just straight docker.
  • then run the docker compose command:
docker compose up -d # might be docker-compose depending on distro
  • dont change inside port of 8080 unless you know what you're doing

manual

  • to run it, either build with go build -o abyss or run it directly with:
URL="your-domain" go run ./main.go
  • then, simply upload your files with curl:
curl -X POST -F "file=@/path/to/file" http://localhost:8080/upload # default url:port

todo:

  • add upload of logs funcionality (like 0x0.st)
  • add docker easy setup
  • add db for tracking of file names
  • add file browser (like file://)