ChordWikiをDockerコンテナ化し、GitHub Actions CI/CDを導入した。
そもそもCentOS 7で動いていたのだが2024年6月30日でメンテナンスアップデートが終了していて、移行は急務というかEOLを越えていた。ソースコードは手動バージョン管理だった。デプロイはMakefileでやっていた。
対応したのは上記の環境移行だけのマイグレーションで、Rubyのソースコード自体は変わっておらず、リファクタリングではない。
それでもずいぶん時間がかかってしまったが、ほとんどの期間は放置していたので工数自体は大したものではない。
2021年夏に育児休業を取得したタイミングで始動した。仕事に行かないので時間はたくさんあり、授乳や夜泣きはあって未知や不安からの負担もあるのだが後から振り返ってみれば0歳児は自分で勝手には動けないので手がかからない。
この余暇を利用して、まず現行ソースを人に見せられるように整理する作業を行い、2021年9月13日にGitHubへfirst commitした。
GitHubへのソースコード登録という長年のToDoを実行した。(非公開リポジトリ)
— クリックして名前を入力 (@worris) 2021年9月13日
すぐにuさんがDockerコンテナ化に着手し、動くようにしてもらったが、そこからいろいろあって一時中断し停滞した。
仕事に復帰するとプライベートの時間が少なくなるのは当然として、幼児は成長するにつれ自分でできることは増えるものの相手をしないと一緒に遊ぼうと絡んでくるので自分の趣味や作業に集中することができない。
そして夜は寝かしつけから寝落ちしてしまうのが習慣となり、睡眠が細切れとなって残り時間は家事を片づけるので手一杯という日々が続く。
この頃はgさんが機能を改良するプルリクエストを送ってくれていたが、検証してマージすることができないでいた。
また意味不明なDoSアタックによるレスポンス低下からのサーバー陥落が頻発するようになり、2021年11月からCloudflareをWAFとして利用開始し、2022年1月からはPro Planにしている。
2022年7月には新着情報を表示させるのに使っていたFeedBurnerの機能がなくなり、2023年4月頃にはイーロン・マスクによる買収後のTwitter API仕様変更によってログイン機能停止を余儀なくされた。
2023年4月10日には以下の投稿をしている。
ChordWikiでは、ボランティアで開発に協力してくださる方を求めています。
— ChordWiki (@chordwiki) 2023年4月10日
リファクタリングが急務となっており、このままではいずれ立ち行かなくなります。まずはDockerコンテナ化とGitHub Flow環境構築を当面の目標と考えています。
(続)
ドキュメントはなく、現行開発者からのサポートも十分に受けられないことを了承ください。自分でコード(chordではなくcode)を解読することが前提となります。まずはコードを見てみるだけでもOKです。
— ChordWiki (@chordwiki) 2023年4月10日
GitHubのアカウントをDMでお知らせいただいたらリポジトリに招待いたします。
しかし2023年~2024年にはほとんど動きがなかった。
この間、サイト利用者への広報を担い、現状でできることを模索して人集めにも奔走してくれたのが一番付き合いの長いmさんである。mさんがいなければ、もし何かもっと大きな障害が発生して復旧が困難になっていたら、サイトを閉じていたのではないかと思う。
2025年に入ってnさんが動かなくなっていたDockerfileを修正したり現行サイトとの乖離を是正する作業を行ってくれて、移行リリースが現実化してくる。
2025年11月にGitHub Team Plan、2026年1月にGitHub Copilot Proを導入。
この頃から仕事上の環境変化によって時間が確保できるようになり、2026年6月から重い腰を上げて、GitHub ActionsワークフローによるCI/CD環境でステージングと本番のブランチから自動デプロイ運用する形を整えた。
私としては長い間「オレにはもうそれ(DockerとGitHubとCloudflare Workers)が…よく分からんのよ…!」という状態だったのだが、2026年6月15日の投稿がこれ。
集中して実装に触れる時間を確保できれば、GitHub(Actions)もDockerもそれなりに解った 書いたものが動く、このhackingの手応え AIは時間短縮に役立った Cloudflareはまだわからん
— worris (@worris.bsky.social) 2026-06-14T15:42:49.648Z
そして2026年7月4日に環境移行を完了した。
ウェブサービスの環境移行作業を始めようとしたら、娘がこれを渡してきた
— worris (@worris.bsky.social) 2026-07-04T13:59:55.211Z
2006年に一人で始めたサイトだったが、今回のプロジェクト過程で複数の人に関わってもらった。GitHubリポジトリのコントリビューターは4名、Discordサーバーのメンバーは11名いる。
私よりもはるかにプログラミング技術に秀でた人たちがいて、ChordWikiというサイトを長年愛用してくださる人たちがいる。いくら感謝しても感謝しきれない。ありがとうございます。
今後は、脱CGIや、フラットファイルCMSからBLOB型データベース格納への再構築も模索したい。nさんは大規模リニューアルを手がけてくれている。
歩みは遅いながらも持続可能になったChordWikiを、これからもよろしくお願いいたします。

