Gyazo server を手元に立ててみる

@masuiさんが作成されて,恐ろしく便利なスクリーンショット共有ウェブサービスGyazo ですが,誰でも見える場所に置かれるので仕事等では使いづらかったりします.

仕事であれば仕事場でしか見えないサーバにアップ出来れば良さそうってことでGyazo クローンを探してみると幾つか見つかりました.

GyazoサーバをMojolicious::Liteで書いた - アリ
http://d.hatena.ne.jp/akiym/20101124/p1

GoogleAppEngineで動くGyazoクローンgaezooのソースをアップしました。 - a2c.get.diary
http://d.hatena.ne.jp/a2c/20091223/1261505344

Webサーバ不要、40行程度のスクリプトひとつで動かせる Gyazoサーバー(クローン)を書いた - 今日もスミマセン。
http://d.hatena.ne.jp/snaka72/20090529/1243608579

harajune/Gyazo - GitHub
https://github.com/harajune/Gyazo

gyazo/Gyazo - GitHub
https://github.com/gyazo/Gyazo

Perl/Ruby/Python 色々あります.
未だ多少は判るPerl でってことで,GyazoサーバをMojolicious::Liteで書いた - アリ を試してみます.

環境はDebianSqueeze です.
先ずはsource を持ってきてファイルにします.
これを叩くと,port 3000 でデーモンが起動し,public ディレクトリが作成されます.この中にファイルが作られるようになります.

Gyazo クライアントを書き換えるか以下のようなコマンドラインを実行してアップロードを試してみます.

import png:- |curl --socks5 localhost:1080 -F imagedata=@- -F id=hoge -H "Expect:" http://192.168.122.198:3000/upload.cgi;echo $n

#このコマンドは@yuisekiさんのこちらのpost を参考にしました.

するとちゃんとサーバ上にファイルが作成されて閲覧も出来ました.
#ちなみに,公式Gyazo Client の最後の辺りでURL 記録するようにしておくと便利なことも.


とりあえず動くようになりましたが,再起動したら起動して来ないので自動起動するようにします.

/etc/init.d/gyazo として以下のようなファイルを用意します.凄い手抜きですね>