You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
|
4 years ago | |
---|---|---|
.env | 4 years ago | |
.gitignore | 4 years ago | |
Dockerfile | 4 years ago | |
README.md | 4 years ago | |
go.mod | 4 years ago | |
go.sum | 4 years ago | |
main.go | 4 years ago |
README.md
backend-pictures
Beep backend proxying Minio to act as a fileserver. Need a running instance of minio
.
To run this service securely is to run it behind traefik forwarding auth to backend-auth
Quickstart
go build && ./pictures
Environment Variables
Supply environment variables by either exporting them or editing .env
.
ENV | Definition | Default |
---|---|---|
LISTEN | Host and port number to listen on | :80 |
MINIO_ENDPOINT | Host and port of minio | minio:9000 |
MINIO_ID | Client id to use with minio | MINIO_ID |
MINIO_KEY | Client key to use with minio | MINIO_KEY |
MINIO_BUCKET_NAME | Name of bucket to store files in | beep |
MINIO_LOCATION | Minio bucket region | us-east-1 |
API
All requests need to be passed through traefik
calling backend-auth
as Forward Authentication. Otherwise, populate X-User-Claim
with:
{
"userid": "<userid>",
"clientid": "<clientid>"
}
Upload FIle
POST /upload
Upload a file to be stored. Requires a request of Content-Type
multipart/form-data
.
Body
Name | Description |
---|---|
file | File to be uploaded |
Success (200 OK)
Name of the file as stored.
Errors
Code | Description |
---|---|
400 | Error parsing file out of request |
500 | Error storing file in minio |
Get File
GET /picture/:filename
Retrieve a picture by filename.
Params
Name | Description |
---|---|
filename | Name of the file to be retrieved |
Success (200 OK)
Image file.
Errors
Code | Description |
---|---|
500 | Error retrieving file from minio |