Open API を用いたスキーマ駆動開発を取り入れた Web サービス
- typescript: 4.8.4
- react: 18.2.0
- react-dom: 18.2.0
- next: 12.3.1
- @fortawesome/react-fontawesom: 0.2.0
- @fortawesome/free-solid-svg-icons: 6.2.0
- @openapitools
- nestjs: 9.0.0
- prisma: 5.22.0
- typescript: 4.3.5
- bcrypt: 5.1.0
- passport-jwt: 4.0.0
- swagger-ui-express: 4.5.0
- docker
- MySQL: 8.0
- 
認証機能 - ログイン
- 会員登録
- ログアウト
 
- 
Todo リスト - 一覧表示
- 検索処理
- 新規登録処理
- 詳細表示
- 編集処理
- 削除処理
 
docker-compose build
// フロントエンド、バックエンド、DBのコンテナを起動する
docker-compose up -d
注: 初回起動時は node_modules を install しているので時間がかかる バックエンド、フロントエンドが起動できたかどうかは、以下のコマンドでログを確認
docker-compose logs
以下のコマンドを実行
make db-setup
url: http://localhost
注: Todo のデータが表示されない場合は、少し待ってからリロードすること バックエンドのアプリケーションの立ち上げに少し時間がかかるため
ログイン画面 (http://localhost) で以下のメールアドレス、パスワードを入力してログインできることを確認。 正常であれば、Todo 一覧画面にリダイレクトする
email: sample1@test.com
password: password
- 以下の情報を元に「sequel ace」などを用いてDBコンテナにアクセスすれば、DBのデータの状態を確認できる
DBMS: mysql: 8.0
host: 127.0.0.1
database: NEXTJS_OUTPUT_WITH_OPENAPI_DB
user: user
password: pass
port: 3306
- sequel aceについて
- https://qiita.com/ucan-lab/items/b1304eee2157dbef7774
prisma は migration のロールバック機能がないため、コンテナのボリュームを削除するしかない。 コンテナが起動している状態で、以下のコマンドを実行してボリュームを削除する
docker-compose down -v
フロントエンド、バックエンド、DB コンテナのログを確認する方法
- コンテナ ID を確認
コンテナを起動している状態で、以下のコマンドでコンテナ ID(CONTAINER ID)を確認する。
docker ps
各イメージに対応する コンテナ ID を確認
- バックエンド: nestjs_output_with_openapi_backend
- フロントエンド: nestjs_output_with_openapi_frontend
- DB: mysql:8.0
- 以下のコマンドで各コンテナのログを確認
docker logs [コンテナID]