メインコンテンツまでスキップ

Wiki

新 Wiki の構築に関して

構成

Frontend

Docusaurus というフレームワークを使用しています。 src/pagesの配下にあるtsx,md,mdxファイル、および、docsの配下にあるmd,mdxファイルがページとして見られる設定になっています。 設定を変更したい等があれば、公式ホームページや現在の設定docusaurus.config.jsを参考に変更してください。 Markdown (Markdown JSX)で記述できるようになっているため、万が一フレームワークが壊れた場合などにおいても、別のマークダウンから静的HTMLを生成できるフレームワークに乗り換えることが可能です。

Backend

CloudFlareで動かしています

過去の情報

Wikiを更新するために、GitHubにpushした時に、自動デプロイするのに使用するサーバーです。 このリポジトリにコードが置いてあります。 expressというフレームワークを用いています。 /api/にリクエストが飛んできた時に処理が動くようになるため、機能を追加したい場合にはsrc/routes/api.ts/を変更してください。 本番環境の環境変数はsrc/pre-start/env/production.envに書いてあるので、これを元にPORTなどが指定されます。

Wiki の設定

apacheを利用して、FrontendやBackend及び旧Wikiのリンクを割り振っています。詳しい設定は/etc/apache2/sites-enabled/wiki.confに書いてあるので、それを読んでください。 フロントエンドは/var/www/nae-wiki~/static/~/nae-wiki/build でシンボリックリンクを貼っています。~/nae-wiki/buildnpm run buildで自動で生成されるディレクトリです。この内部にあるディレクトリがそのままWikiのホームページに反映されます。

Node.JS のインストール

Ubuntu の apt を使用してNode.JSをインストールするとバージョンが古いため、以下のコマンドで、最新のltsバージョンのNode.JS(構築時点でv16)を取得しました。 およそ2年でメンテナンスが終了してしまうため、メンテナンスが終了する以前にはバージョンを更新できるようにしてください。Node.JS のリリース

wget https://deb.nodesource.com/setup_lts.x
chmod a+x setup_lts.x
./setup_lts.x

更新時に必要な変更

GitHub Actionsの設定を更新してください。

参考: GitHub Actions Node.JS

ファイルは .github/workflows/check.yml,.github/workflows/deploy.ymlの2つです。 正しくビルドできるか確認するために、node-version: [16.x] を対応するバージョンに変更する必要があります。

自動デプロイの設定

自動デプロイのためのサーバーを自作しているため、これを立ち上げ直す必要があります。 おそらくforeverのインストールには管理者権限が必要になります。 ~/server/start.sh に起動用のスクリプトを記述しているため、実行してください。(foever の実行が変わった場合には、適宜修正をお願いします。foreverから別のライブラリに変更しても構いません。)

sudo npm install -g forever
cd ~/server
npm install
npm run build
./start.sh

停電時の対応

特に行うことはないはずです。デプロイ用のサーバーが自動で再起動するよう、cronの設定(crontab -lで確認可能)をしています。動いていない場合には、自動デプロイの設定で記述したのコマンド./start.shを実行してください。