作業の先を想像して、しかもそれが長いとダルいですね。ダルくないですか??私はダルいです。ダルダルダルダルダルメシアン。

このサイトを構築した当初からジャパニーズSAKEギャラリーを作りたいという想いがありました。SAKEギャラリーは未だ構築には至っていないんですが、いちおうフォトギャラリーはVueJSなどで構築しました。今年の頭の話ですね。

実のところ、一番初めにLycheeというOSSで構築しようとしたことがありました。一旦試しにVPSで動かすところまでやったのですが、このLycheeは個人開発でしかもノンフレームワークで開発も停滞気味ということがあって最終的に採用を見送りました。その次は自作してみようかとPlayFrameworkでやりかかったものの、画像の処理とか考えれば考えるほどめんどくさいという気持ちが出てきて、作りかかって頓挫したということがありました。

そういった紆余曲折を経てLychee頓挫してから2年くらいたってようやく妥協して今のフォトギャラリーが完成したわけですよ。んで、最近改めてちょっとLychee見に行ったらなんかOrgに移ったうえにLaravelベースで開発が進められていて、ちょっともう一回試してみようかなと思った。(メインで開発してる人は少ないけど)

以前は存在しなかったオフィシャルDockerもあるし(中身は個人のイメージ使ってるけど)手軽に試せそうかと。なにより、ツイッター・オルタナティヴという記事で書いた通り、4GB RAM, 2 vCPU, 80GBのガラガラのガラ空きインスタンスを持て余していて、そいつのもとを取りたいとかいうね。もうそういうしょうもない気持ちがあるんですよ。

なので、これを動かしてみようかなぁ。なんて思ったんですね。思ったんですけど、重い腰があがらないんですわ。ほら、よく考えてくださいね。まず、私が欲しい機能があるかどうかがわからんじゃないですか。ということは、まず、ローカルで動かして試すところから始めることになるんですね。それを経て、仮に求める機能があったとしても、ドメイン取って、証明書発行して、nginxに設定してとかめんどくさいでしょ。

私は異なるコミュニティの異なる複数人に「めんどくさい言い過ぎやで」といわれるくらいついうっかり「めんどくさい」が口から出てしまうくらいめんどくさがりなんですよ。もうこれたぶん初めに言われたの中学生くらいの時なので治らないと思う。宮崎駿氏が「仕事はめんどくさい」っていってるあの映像、有名だと思うんですけど、私は仕事以外の自分のやりたいこともめんどくさいんですね。

えぇ??おかしい??でも想像してください。検証して、ドメイン取って、証明書発行して、nginxに設定、Dockerを使うとはいえ環境構築もある。めんどくさくないですか??まず、sshでサーバに入るのがしんどい。「自前で運用するからめんどくさいんだ。インスタをつかえ??」いや、わかってないですね。こういうのはね。自分のインターネットに閉じ込めるのがいいんですよ。箱庭なんだよ。HAKONIWA!!

いいですか、他社のサービスを利用するということは私の遺伝子の生殺与奪の権利がどこぞのサービスに握られることになるんですね。まあ、GitHubみたいな遺伝子薄めのやつは別にいいんですけど、こういうブログとか写真の遺伝子濃い目のやつって、死んだタイミングで消え去って欲しいという願望が私にはあります。なので他のサービスにのせたくない。まあ、VPSで動かしてる時点で既にサービスに依存してるんですが、それは置いておきましょう。なので、Let’s Encryptの3ヶ月で証明書更新はめんどくさいんですが、証明書が更新されなければ閲覧できなくなるので死亡宣言と自動削除のためにちょうどいいかなと思ってます。

後はAboutサイトはAWSのACMで証明書自動更新とかいうお節介なやつなのでこっちも一定期間サイト更新がなければ証明書を停止するかS3のバケットを削除するような自爆機能を手軽に実装できるなにかをお待ちしております。よろしくAWSさん。

でまあ、話を戻すと、新しいLycheeをローカルでザックリ試してみたところおおよそやりたいことはできそうということでした。ただ、一点だけ私はシェア機能はいらないのですが、どうもコレをOFFにする手段がないようです。思うに個人で構築したいような人間にシェアとかいう機能はいらないと思うんですが、どうも現時点ではないようです。

ところが幸か不幸か、新しいLycheeはLaravelベースで、なんとこれは幸か不幸か私が触ることができる技術スタックなんですね。幸か不幸か。幸か不幸かわかんないんですけど。ちょろっとコードを読んでみた感じ、ダウンロード可能かどうかという機能と似たような実装をすればたぶんシェアするかどうかも実装できそうな雰囲気というのはわかりました。これ、一日使えばPR出せるんじゃないかなぁ。と思った。思ったんですが、いや、そのPRがマージしてもらえるかどうか不明だし、とか、そもそも家でまでこの技術スタック使いたくないとか。そういうのを考えるわけですよ。そうなると、もうそういうめんどくさい実装は置いておいてForkしてシェアのところ削って動かせばよくない??とか思うんですね。でもそうなると、公式のDocker弄らないとダメだし、なにより本家と差分でるし…

などというのをダラダラと考えていると超絶めんどくさくなってきてしまいますね。もういっそ、シェア機能の削除は妥協してそのまま使うとしても、やっぱりsshして構築するのめんどくさいじゃないですか。はぁ~~~~~ん。ダルダルダルダルダルメシアン。

んで、まあここまで読んでくださった稀有な方がいらっしゃるかどうかは別として、こういう超絶くだらないことを書いている時間で構築できると思うじゃないですか??思いません??

というわけで 構築しました

もうね、日々ソフトウェア開発マジしんどぃぃぃぃぃぃぃぃぃぃぃぃぃぃぃぃ…。などと思ってるんですが、思いながらも30分くらいで構築できてしまうの。このしょうもない記事にかけてる時間より早い。もうね。これがIT事務員おじさんパワーですよ。

んでまあ、アクセスしていただいた方はわかると思うんですが、写真がまだ一枚も登録されてません。これね。写真ね。写真アップするにも、80GBあるとはいえフルサイズでアップするとストレージの枯渇は必至なわけなんですね。ユーザーにもアンフレンドリーだし。ということは、そのままアップできないので、Compressしてやらないとダメなわけですね。

ところでLycheeにはアップした写真のExifから自動で情報取得して表示してくれる機能があるんですが、これ。イイですね。イイ。ナイスライチー。実のところこれがあったので最初に使おうと思ったんですね。もう3年くらいたってるけど。ということは、CompressするときにExifを削除しないようにしないといけないわけですね。これはつまり私のAdobe先生の書き出し設定でそういう感じの設定を作ってやって、書きだす作業をね、やってあげないとダメなんですよ。あ。これめんどくさいですね。めんどくさくないですか???

とりあえずどうでもいい写真からぽつぽつアップしていけたらいいかなと思います。でもダルいよなぁ…。はぁ~~~~~ん。ダルダルダルダルダルメシアン。おわり。