Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/tsukumijima/nx-jikkyo
NX-Jikkyo: Nico Nico Jikkyo Alternative
https://github.com/tsukumijima/nx-jikkyo
dtv nicojk nicolive niconico nx-jikkyo
Last synced: 7 days ago
JSON representation
NX-Jikkyo: Nico Nico Jikkyo Alternative
- Host: GitHub
- URL: https://github.com/tsukumijima/nx-jikkyo
- Owner: tsukumijima
- License: mit
- Created: 2024-06-10T03:37:11.000Z (5 months ago)
- Default Branch: master
- Last Pushed: 2024-10-24T09:50:31.000Z (27 days ago)
- Last Synced: 2024-10-25T07:14:50.067Z (26 days ago)
- Topics: dtv, nicojk, nicolive, niconico, nx-jikkyo
- Language: TypeScript
- Homepage: https://nx-jikkyo.tsukumijima.net
- Size: 41.2 MB
- Stars: 12
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: Readme.md
- License: License.txt
Awesome Lists containing this project
README
# NX-Jikkyo
**NX-Jikkyo:** Nico Nico Jikkyo Alternative
## Development
### Server
```bash
# .env を作成
cp .env.example .env# ローカルの Docker 環境に proxy-network という名前でネットワークを作成
## 開発環境だけならなくてもいいのだが、本番環境では異なる Docker Compose 構成 (=nginx) から
## NX-Jikkyo の HTTP サーバーにアクセスできるようにするために必要
## 開発環境と本番環境で諸々分けるのが面倒なので、開発環境でも作成しておく必要がある
docker network create proxy-network# VSCode 上での Python の補完が効くように、別途ローカルに Poetry で管理している依存ライブラリをインストールする必要がある
## 実際に NX-Jikkyo サーバーの動作に使われるのは Docker イメージビルド時にインストールされたライブラリの方
## 両者は同期しないので、Poetry でライブラリを追加・更新した際は忘れずにローカル環境で poetry install --no-root を実行すること
cd server
poetry install --no-root# 以下のコマンドは内部的に Docker Compose 上で実行される
# MySQL コンテナは NX-Jikkyo (Uvicorn) と同時に起動する (サーバーを立ち下げても MySQL コンテナは停止しないので注意)# サーバーを起動
poetry run task serve# サーバーを起動 (ホットリロード)
poetry run task dev# Aerich (マイグレーションツール) を使う
poetry run task aerich --help# MySQL のバックアップを取る
./mysqldump.sh# MySQLTuner を実行する場合 (別途 MySQLTuner のダウンロードが必要)
~/mysqltuner.pl --host $(docker inspect -f '{{range .NetworkSettings.Networks}}{{.IPAddress}}{{end}}' nx-jikkyo-mysql) --user root --pass nx-jikkyo_password --forcemem 8192 --forceswap 2048
```## License
[MIT License](License.txt)