.NET Core Identity Practice Project
https://docs.microsoft.com/ja-jp/dotnet/core/install/macos
- プロジェクト準備
git clone
touch .gitignore
- change LICENSE
dotnet new mvc -o .
dotnet run
で起動確認
- アプリケーションを docker-compose で立ち上げる準備
- アプリケーションの
Dockerfile
作成 dotnet dev-certs https -ep ${HOME}/.aspnet/https/aspnetapp.pfx -p passward
dotnet dev-certs https --trust
- アプリケーションだけの
docker-compose.yml
を作成 docker-compose up -d
で動作確認
- アプリケーションの
- Swaggerいれる
dotnet add package Swashbuckle.AspNetCore --version 5.6.3
- Startup.cs に Swashbuckle.AspNetCore を使うための設定を追記
- サンプルAPIを追加
- docker-compose に MySQL など追加
- adminer, mysql, redis を追加
- mysql の文字コード設定を確認するクエリ
show variables like '%char%';
- dapper 他使用パッケージを入れて接続確認
dotnet add package Dapper --version 2.0.35
dotnet add package MySql.Data --version 8.0.21
dotnet add package CloudStructures --version 2.3.2
- ConnectionString の server はlocalhostではなく container_name(=myql) にする
- .env ではなく docker-compose 内の environment に環境変数を書く場合はスペースを含んでいても引用符なしで記述
- NG: APPSETTING_DBCONNECTION="server=mysql; database=hoge"
- OK: APPSETTING_DBCONNECTION=server=mysql; database=hoge
- 認証認可を入れてみる
- 今ここ
- プロジェクトを分けたディレクトリ構成
- root
- App
- Dockerfile
- docker-compose.yml
- App.Tests
- Dockerfile
- App.sln
- App
- root
- Stepを参考にDockerコンテナ立てる
- 同様にSwaggerいれる
- 簡単なAPIも用意しSwaggerUI確認
- 同様にDapperもいれる
- 簡単なデータベースアクセスもテストする
- Webエンジニア(仮)の備忘録 を参考に認証認可とSendGridでのメール認証いれる