bin/readme.md
Gunwant Jain 0239e253a7 docker-compose, readme: s/HOST/HOST_URL/
HOST is an already taken env variable

Signed-off-by: Gunwant Jain <mail@wantguns.dev>
2021-01-06 06:15:03 +05:30

75 lines
1.6 KiB
Markdown

Usage
-----
```plain
POST /
accepts raw data in the body of the request and responds with a URL
of a page containing the body's content
GET /<id>
retrieves the content for the paste with id `<id>`
GET /p/<id>
retrieves the HTML page with syntax-highlighted content for the paste with id `<id>`
```
Examples
--------
```plain
Paste a file named 'file.txt' using cURL:
curl --data-binary @file.txt https://bin.wantguns.dev
Paste from stdin using cURL:
echo "Hello, world." | curl --data-binary @- https://bin.wantguns.dev
Add this to your .zshrc to implement a quicker usage.
function paste() {
local file=${1:-/dev/stdin}
curl --data-binary @${file} https://bin.wantguns.dev
}
If the uploaded data binary is parsed as "text/*", then the paste will be syntax
highlighted
```
Deployment
----------
### Traefik
```yaml
## (... Traefik service configuration ...) ##
pastebin:
image: wantguns/bin
restart: always
container_name: pastebin
ports:
- 127.0.0.1:6162:6162
environment:
- ROCKET_PORT=6162
- THEME=
- HOST_URL=${BIN_DOMAIN}
volumes:
- /path/to/local/upload:/app/upload
labels:
- "traefik.enable=true"
- "traefik.http.routers.pastebin.rule=Host(`${BIN_DOMAIN}`)"
- "traefik.http.routers.pastebin.entrypoints=secure"
- "traefik.http.routers.pastebin.tls.certresolver=le"
- "traefik.http.services.pastebin.loadbalancer.server.port=6162"
networks:
- bin_network
networks:
- bin_network
```