Skip to content

Nixを使用した開発サーバーの作成

Nixを使用して、少ないレイヤーで軽量な開発サーバーを作成できます。

💡ヒント

Nixでは、PostgreSQLとRedisのみ起動します。LynqChat本体はNix外で起動します。

前提条件

LynqChatの起動には以下のソフトウェアが必要です。

また、このガイドではNixを使用します。
実験的機能などを使用するため、Determinate Nixのインストールを推奨します。

LynqChatのダウンロード

# LynqChatをダウンロード
git clone https://gitea.last2014.com/last2014/lynq-chat
cd lynq-chat

configの適用

# デフォルトのconfigをコピー
cp config/example.yaml config/config.yaml

config/config.yamlをコメントに従って変更してください。

PostgreSQL・Redisの起動

⚠️注意

WSLの/mnt/*では、権限の制約によって動作しません。
/home/*などのディレクトリで使用してください。

💡ヒント

初回起動時にはconfigを読み取ってPostgreSQLが初期化されます。

# Nixの開発シェルに移動します。
# ローカルにZshがインストールされており、同じ環境を使用したい場合は
# nix develop -c zsh
nix develop

PostgreSQL・Redisを終了する場合は、exitで安全に終了できます。
PostgreSQLのデータはpostgres-data-nix、Redisのダンプはredis-data-nixに保存されます。

LynqChatの起動

⚠️注意

config.yamlでバックエンドのポートを3300以外に変更する場合は、プロジェクトルート直下に環境変数ファイルを作成し、VITE_API_PORT=1234のように設定してください。本番環境では不要です。

💡ヒント

バックエンド、フロントエンドどちらもwatchします。

💡ヒント

データベースは自動的にマイグレーションされます。
貢献にエンティティの変更などが含まれる場合は、pnpm migrator createでマイグレーションファイルを作成できます。

# 依存関係のインストール
pnpm i

# 起動
pnpm dev

http://localhost:5173 (デフォルトのフロントエンド)にアクセスしてください。バックエンドは自動でプロキシされます。

最終更新日: