riina-k.net

音楽・小説・プログラミングを手がけるリイナの拠点。

Docker Compose と nginx でリバースプロキシを作ろうとしたお話(ネットワーク編)

Docker Compose と nginx でリバースプロキシを作ろうとしたお話(SSL編) のさらにさらに続き。

今回は、nginx がつながってるフロント側のブリッジとは別に、バックエンド用のブリッジを作成し、そっちに MariaDB コンテナを作成してみようという試みです。

イメージはこんな感じ。

続きを読む

Docker Compose と nginx でリバースプロキシを作ろうとしたお話(出題編)

家から電車で1時間程度のところで開催された OSC 2019 Tokyo/Spring に行ってきました。
さくらインターネットのセッションで Docker Compose が取り上げられていて、めっちゃ興味持ちました。
そこで今回は Docker Compose を使ってバーチャルホストでリバースプロキシにチャレンジしてみました。

完成してないけど、作業ログとして置いておきます。

続きを読む

github で rk. tv を管理

私が主宰している同人音楽サークル「rk. tv : あーけーどてぃーゔいー」の公式サイトのソースコードを github で管理するようにしました。
https://github.com/RiinaKw/riina-k.tv

本番環境へのデプロイがめっちゃ楽!(いまさら)
だって

$ git pull

これ叩くだけでいいんだもん!(だからいまさら)

コミット履歴を見ると分かりますが、初期ソースが原型を留めないほどリファクタリングしまくった結果、どこかの燃料っぽい独自フレームワークになってました。
composer 使って、クラスのオートロード使って、ルーティングテーブル定義して、やってること完全に燃料じゃん

ローカルリポジトリの管理に GUI ツールを導入することも検討しましたが、いまいち使い勝手が悪いので、結局コンソールからコマンド打ってます。これが一番楽かもしれない。

タブレット2台が一斉に直った

Nexus 7 (2012) と Miix2 8 の2台のタブレットを持ってましたが、両方とも不具合で放置してました。

  • Nexus 7 (2012) : 電源が入らない
  • Miix2 8 : タッチパネルが反応しない

もう修理に出さないとだめかなーと思いつつ、なんとなくググってみたら両方ともよくある不具合らしく、

この操作で両方とも直った!! 分解して直す人もいるようですが、私の場合は分解不要でした。
これでタブレットで安心してアニメが観れるよやったね!

ただNexusのほうは妙に動作が重く、調べてみるとどうやらストレージI/O、データベースI/Oあたりがボトルネックになってる模様。
Nexus7(2012)をLollipopにしたら動作が激重・フリーズ連発する
Nexus 7(2012)をLolipopにして重くなったChromeは閲覧履歴のクリアで軽くなった
ここらへんを参考に設定をいじくって、多少改善しました。
また重くなるようなら初期化かなぁ……

riina-k.tv に SSL(HTTPS) を導入してみた

同人サークルサイトを大規模リニューアル, mod_rewrite と初めて格闘してみた に続くリニューアル第3弾。

https 通信にしないと Google から警告を食らうという噂が!
Google Chrome、HTTPSサイトの「保護された通信」を非表示に 「デフォルトで安全が前提」 – ITmedia エンタープライズ
いよいよGoogleが本気。Chrome 68から全HTTPサイトに警告! | 常時SSL Lab. by Zenlogicのファーストサーバ株式会社

そこで riina-k.tv も https を導入してみました。
普通は SSL 証明書の発行にはかなりの金額がかかるものですが、なんと無料で使える神認証局「Let’s Encryptがありました。
インフラエンジニアの友人の助けを受けながら、これを使って SSL を導入。

続きを読む

mod_rewrite と初めて格闘してみた

WordPress や FuelPHP を使っていると、勝手に設定してくれる Apache の mod_rewrite
実際のファイル名とは違う URL を指定できるのがポイントです。

今までは自動生成してくれたデータを .htaccess にコピペするくらいしかしてませんでしたが、
同人サークルサイトを大規模リニューアル に関して「ハッシュタグ(・A・)カコワルイ!!」と思ったのと、各曲ごとに og タグを出力できないことを考えて、思い切って導入しました。

<IfModule mod_rewrite.c>
    RewriteEngine on

    RewriteBase /
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    #RewriteCond %{REQUEST_FILENAME} ^(.*)$
    RewriteRule ^(.*)$ %1.php
</IfModule>

今回やったのは「/music」と拡張子抜きで「/music.php」にアクセスできるようにするだけ。
これに加えてプログラム側でハッシュタグをパス形式に変更して

http://riina-k.tv/music/anthurium

こんな URL でアクセスできるようになりました。
たったこれだけの設定に何時間もかかりました……やっぱりフレームワークは偉大だなぁ。

同人サークルサイトを大規模リニューアル

私が主催する同人音楽サークル「rk. tv」の公式サイトを大幅にリニューアルしました。
フル Ajax+レスポンシブデザイン。HTML5 + CSS3 + jQuery で構築しており、AngularJS や Bootstrap などのフレームワークは一切利用していませんここ自慢できるポイント

リニューアルのきっかけは、音楽の試聴に SoundCloud を使い始めたため。
30曲近いトラックのすべてを iframe で読み込んでいたため、ページがめっちゃ重たい状態になっていました。
それを打破するため、「曲情報をクリックして初めて SoundCloud を読み込む」という体制に変更しようとしたらフルAjaxになってました(?)
もともとメニューの追従や背景画像のエフェクトなど簡単な JavaScript を使っていましたが、これを期に大幅に書き加え、さらに「せっかくならスマホ対応しようぜ」とやっていたら軽く1週間経ってました言い換えればこの程度のウェブサイトであれば1週間の納期でできるってこった

iOS 端末が手元に無いのと、持ってるタブレットが全滅してるため、レスポンシブの完全なデバッグができていない状態ですが、バグが見つかり次第潰していく予定です。

return top