Skip to content

🎑 ⬆️ A high speed image manipulation and storage microservice for Google Cloud Platform written in Go

Notifications You must be signed in to change notification settings

LevInteractive/imageup

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

25 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

ImageUp for Google Cloud Platform (Storage)

Imageup is a microservice which handles the heavy lifting of image resizing and uploading to Google Cloud Storage. Essentially, you send it a full size image and basic instructions and it will send back an array of hosted images based on those instructions. With Imageup, you never need to store images locally on disk which is ideal when running multiple nodes at once.

It's recommended this be run as a private microservice (most likely within a Kubernetes cluster) because it does not handle any type of authentication. That should be done by the application interfacing with this service.

Usage

The easiest way to use this is to simply pull and run it using docker. Note that GOOGLE_APPLICATION_CREDENTIALS is only required if you aren't running this in a Google Cloud environment. Otherwise, it's already set by default.

docker run -it --rm levinteractive/imageup \
  -e GOOGLE_APPLICATION_CREDENTIALS=/path/to/servicefile.json \
  -e BUCKET_ID="my-bucket" \
  -e SERVER_PORT="8080"

Alternatively, you can download this repo and build the binary for your respective arch. I didn't include binaries, but could if there is any demand.

Environmental Variables

  • BUCKET_ID default: null (required)
  • CACHE_MAX_AGE default: 86400
  • SERVER_HOST default: localhost
  • SERVER_PORT default: 31111
  • CORS default: "*" (wildcard should be fine since it's private to begin with)

About

🎑 ⬆️ A high speed image manipulation and storage microservice for Google Cloud Platform written in Go

Topics

Resources

Stars

Watchers

Forks

Packages

No packages published