39 lines
1.4 KiB
Markdown
39 lines
1.4 KiB
Markdown
# 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 abyss](#running)
|
|
- [installing with docker](#docker)
|
|
- [installing manually](#manual)
|
|
- [todo list](#todo)
|
|
|
|
## 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:
|
|
```bash
|
|
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:
|
|
```bash
|
|
URL="your-domain" go run ./main.go
|
|
```
|
|
|
|
- then, simply upload your files with curl:
|
|
```bash
|
|
curl -X POST -F "file=@/path/to/file" http://localhost:8080/upload # default url:port
|
|
```
|
|
## todo:
|
|
- [x] add upload of logs funcionality (like 0x0.st)
|
|
- [x] add docker easy setup
|
|
- [ ] add db for tracking of file names
|
|
- [ ] add file browser (like file://)
|