Skip to content

Latest commit

 

History

History
83 lines (61 loc) · 2.01 KB

README-Docs.md

File metadata and controls

83 lines (61 loc) · 2.01 KB

ドキュメント

実行方法

以下の環境変数をルート直下の.envに記述

MYSQL_HOST=ホスト名 #(例:mysql)
MYSQL_USER=ユーザー名 #(例:root)
MYSQL_PORT=ポート #(例:3306)
MYSQL_PASSWORD=パスワード #(例:password)
MYSQL_DATABASE=DB名 #(例:my_db)
TZ=タイムゾーン #(例:Asia/Tokyo)
NEXTJS_PORT=Next.jsのポート #(例:8080)

インストール

docker compose run --rm nextjs-app npm i
# モジュールを新しくインストールする場合は以下
docker compose run --rm nextjs-app npm i {モジュール名}

以下のコマンドでコンテナ起動

docker compose up -d

コンテナを修了する

docker compose down

起動しているプロセスを確認

docker ps

コンテナの中に入る

docker exec -it {コンテナ名} sh

MySQLにログイン

mysql -u root -p # この次にパスワードを入力

ディレクトリ構成

  • /app:Next.jsのアプリ
  • /app/src/pages:ページを作成する
  • /app/src/pages/api:APIを作成する
  • /app/src/features:画面・機能ごとに使うコンポーネントを作成
    • 下階層
      • /home:ホーム画面
      • /message:メッセージ画面
      • /signin:サインイン画面
      • /signup:サインアップ画面
      • /timeline:タイムライン機能
  • /app/src/application:共通で使うコンポーネントや関数を作成
    • 下階層
      • /lib:関数
      • /providers:プロバイダー
      • /types:型ファイル
      • /UI:共通コンポーネント(ヘッダー・フッターなど)
  • /initdb.d:初期化のSQL

アーキテクチャ

Container・Presentationalについて

Container:コンポーネントのロジックを記述

Presentational:コンポーネントのUIを記述

実装例はfeatures/signin内のコンポーネントを参照