2022/8/28(日)

半日でコメントシステムの開発にケリを付けるつもりだったがさすがに無理だった。午前中にmarkedのサニタイズやMarkdownのスタイル調整は終わったんだけどなあ。Dockerfileの仕組みも大方理解していたのだが、いい感じにDockerイメージにまとめるのは細かいノウハウみたいなのが多く、初めてでは厳しかった。

サニタイズ用にsanitize-htmlを導入したのだが、何やらviteのdevサーバー上で動いてくれない。JSコンソールがエラーを吐いている。vite buildした産物は動く。どういうこっちゃ。

サークルの先輩に相談したところ、恐らくsanitize-htmlはそもそもNodeJS上で動くことを想定された代物で、ブラウザ上で動かそうとするとNodeJS環境専用のモジュールを使おうとして死ぬらしい。vite buildしたものだと動くのは、サニタイズ処理本体ではNodeJS専用の機能を利用していないためtree shaking(不使用のコードを削る処理)で落とされているからだと考えられると。devサーバーでもその手の処理は行われているものと思っていた。

結局devサーバーで動くようにはならなかったが、フロントエンドの開発はほぼ終わっていたので問題にはならなかった。サニタイズを最後に回したのは単にたまたまでしかないが、運が良かった。

Dockerfileの作り方についてはここが非常に参考になった。他のところの情報で大体の仕組みは掴んでいたのだが、この記事はより実用的な「あんま明文化されないけどまあDockerfile作るなら常識だよね」みたいなあたりを説明してくれていたので非常に助かった。

https://qiita.com/pottava/items/452bf80e334bc1fee69a

あとは本当にこまごまとした話。コンテナのスタート時にデータベースのマイグレーションをするとか、初期ユーザーを作るようにしようとか、動作に必要なファイルをどこのパスに配置してどのファイルをどう読み込ませようとか。やり慣れていれば迷わないんだろうが、やり慣れていないので理解していても次の一手が咄嗟に分からない。

しかし、Dockerfileをビルドするのはなかなか気持ちがいい。手作業で作った道の上を一気に鉄道が走るような爽快感がある。


昼頃に昼食の買い出しついでに散歩をした。


昨日は筋トレをさぼってしまったが、今日はやった。腕立て。

腕立てはなんか一番効いてるのが良く分かるので好き。


早起きして寝る直前までPCを触っており、締め切りに追われているせいではあるがなんかストイックな人のような一日になった。締め切りに追われていても飯と睡眠は最低限取る、というのがちゃんとできたのは良い感じ。この日を良いモデルにしたい。

Categories: