tissue/README.md

2.7 KiB

Tissue

a.k.a. shikorism.net

シコリズムネットにて提供している夜のライフログサービスです。 (思想的には shibafu528/SperMaster の後継となります)

構成

  • Laravel 6
  • Bootstrap 4.4.1

実行環境

  • PHP 7.3
  • PostgreSQL 9.6

開発環境の構築

Docker を用いた開発環境の構築方法です。

  1. .env ファイルを用意します。.env.example をコピーすることで用意ができます。

  2. Docker イメージをビルドします

docker-compose build
  1. Docker コンテナを起動します。
docker-compose up -d
  1. Composer と yarn を使い必要なライブラリをインストールします。
docker-compose exec web composer install
docker-compose exec web yarn install
  1. 暗号化キーの作成と、データベースのマイグレーションを行います。
docker-compose exec web php artisan key:generate
docker-compose exec web php artisan migrate
  1. ファイルに書き込めるように権限を設定します。
docker-compose exec web chown -R www-data /var/www/html/storage
  1. アセットをビルドします。
docker-compose exec web yarn dev
  1. 最後に .env を読み込み直すために起動し直します。
docker-compose up -d

これで準備は完了です。Tissue が動いていれば http://localhost:4545/ でアクセスができます。

デバッグ実行

docker-compose -f docker-compose.yml -f docker-compose.debug.yml up -d

で起動することにより、DB のポート5432を開放してホストマシンから接続できるようになります。

アセットのリアルタイムビルド

yarn watchを使うとソースファイルを監視して差分があると差分ビルドしてくれます。フロント開発時は活用しましょう。

docker-compose run --rm web yarn watch

もしファイル変更時に更新されない場合はyarn watch-pollを試してみてください。
現在Docker環境でのHMRはサポートしてません。Docker外ならおそらく動くでしょう。
その他詳しくはlaravel-mixのドキュメントなどを当たってください。

phpunit によるテスト

変更をしたらPull Requestを投げる前にテストが通ることを確認してください。
テストは以下のコマンドで実行できます。

docker-compose exec web composer test

環境構築上の諸注意

  • 初版時点では、DB サーバとして PostgreSQL を使うよう .env ファイルを設定するくらいです。 当分、PostgreSQL から変える気はないので専用 SQL 等を平気で使います。