なんかえらいはまったのでメモ。絶対忘れる。
ラズベリーパイにASP.NET CoreのアプリをデプロイするときにDocker Composeを使う。でHTTPSアクセスしたいときにはまったのでメモ。
要するにこれなんだけど。
ちなみに、ラズベリーパイにデプロイしたアプリは家の中でしか使わないので、いわゆるイントラネットでのHTTPSアクセス。インターネット側に公開してたらまた違うと思うのでそのへんはそゆことで。
sudo dotnet dev-certs https -ep /root/.aspnet/https/<アプリ名>.pfx -p <パスワード>
いや/root/.aspnet/httpsでなくてもいいんだけど、<アプリ名>.pfxってのをどこかに作る。
で、
docker-compose.ymlでは
environment:
- ASPNETCORE_URLS=https://ラズパイ名:ポート
- ASPNETCORE_Kestrel__Certificates__Default__Password=パスワード
- ASPNETCORE_Kestrel__Certificates__Default__Path=/https/アプリ名.pfx
ports:
- "ポート:ポート"
volumes:
- /root/.aspnet/https:/https:ro
ってな感じで、ASPNETCORE_Kestrel__Certificates__Default__Pathでpfxファイルを指定する。
これ、Dockerファイルでコピーしちゃってもいいんじゃないかな。更新面倒だけど。