mirror of
https://github.com/vbatts/imgsrv.git
synced 2024-12-24 23:06:31 +00:00
Image (or most any file) Web client and server Backed by MongoDB
Vincent Batts
56ccafefa9
Open() Create() and Delete() are there'ish. But get/set metadata is not quite right yet. And it seems that _viewing_ an uploaded object is not working. But all of the index fetching is not there yet. Signed-off-by: Vincent Batts <vbatts@hashbangbash.com> |
||
---|---|---|
assets | ||
client | ||
config | ||
dbutil | ||
hash | ||
server | ||
types | ||
util | ||
.gitignore | ||
Dockerfile | ||
imgsrv.go | ||
layouts.go | ||
LICENSE | ||
README.md | ||
server.go | ||
version.go |
imgsrv
Overview
Initially, I just wanted a server that I could upload images to, and quickly serve back. While it's mostly that, it is the client and server side tooling.
The files are stored in mongoDB, using its GridFS.
Usage
Server side For a basic start, make sure mongo is running on the localhost, and run: ./imgsrv -server 2013/02/12 13:03:37 0.0.0.0 2013/02/12 13:03:37 Serving on 0.0.0.0:7777 ...
For something a bit more complicated, like an openshift diy-0.1 cartridge, set your .openshift/action_hooks/start to:
nohup ${OPENSHIFT_REPO_DIR}/bin/server \
-server \
-ip ${OPENSHIFT_INTERNAL_IP} \
-port 8080 \
-mongo-host ${OPENSHIFT_NOSQL_DB_URL} \
>> ${OPENSHIFT_LOG_DIR}/server.log 2>&1 &
Client side: Either pass the -remotehost flag pointing to your server instance
imgsrv -remotehost http://hurp.til.derp.com:7777 -put ./lolz.gif -keywords 'cats,lols'
or setup your ~/.imgsrv.yaml, with a the value 'remotehost', like so:
---
remotehost: http://hurp.til.derp.com:7777
then you can drop that flag out, for quicker lolzing:
imgsrv -put ./lolz.gif -keywords 'cats,lols'
2013/02/12 13:00:28 POSTing: http://hurp.til.derp.com:7777/f/?filename=lolz.gif&keywords=cats,lols
2013/02/12 13:00:29 New Image!: http://hurp.til.derp.com:7777/f/lolz.gif
Building
Either
git clone git://<host>/imgsrv.git
cd imgsrv
go build
./imgsrv
or
go get github.com/vbatts/imgsrv
imgsrv