MASUDAQ BLOG
NO DEVELOPMENT NO LIFE.
Azure App Service on Linux はコンテナーで動いている
以前に、Azure App Service on Linux で使用されている Linux ディストリビューションとういう記事を書きました。 が、これダメでしたね。時代が止まってましたね。App Service のインスタンス毎に VM がディプロイされるような先入観で考えてました。 Azure App Service on Linux のログを見ると分かるのですが、コンテナーで動いてました。 2023-08-25T14:18:17.018Z INFO- 7.0_20230726.2.tuxprod Pulling from appsvc/dotnetcore 2023-08-25T14:18:17.032Z INFO-Status: Image is up to dat...
System.Drawing.Common の代替として Microsoft.Maui.Graphics を Linux で利用する
System.Drawing.Common が Windows 固有のライブラリに .NET 6 での breaking change(破壊的変更) で、System.Drawing.Common が、Windows 固有のライブラリと位置付けられました。Windows 以外の OS では、デフォルトの設定では、動作しなくなりました。ただし、ランタイム構成を変更すれば、動作するようです。 https://learn.microsoft.com/ja-jp/dotnet/core/compatibility/core-libraries/6.0/system-drawing-common-windows-only .NET 7 では、windows 以外のサポートが完全...
Azure App Service スタックトレース表示
Azure App Service にディプロイしたら動かない Azure App Service にディプロイしたら、動かないってことありますよね。ローカル環境では、動いてたのに。 このページは現在機能していません。現在、この要求を処理できません。HTTP ERROR 500。と、言われても。 開発者例外ページ 一方、ローカルの開発環境では、ブラウザにスタックトレース等のエラーの詳細が出力されます。原因の特定が簡単です。が、Azure App Service 上ではエラーの詳細が、確認できなくて、原因の特定に時間がかかってしまう。 このブラウザにエラーを出力するものですが、Developer exception page(開発者例外ページ) というものです。 この開発...
.NET コンソールアプリで、DI(Dependency Injection) する
.NET コンソールアプリで、DI(Dependency Injection) をするには、Generic Host を使います。 public class Program {public static void Main(string[] args){ IHost host = Host.CreateDefaultBuilder(args).ConfigureServices(services =>{ // DI services.AddTransient<IDemo001, Demo001>(); services.AddScoped<IDemo002, Demo002>(); services.AddSingleton<IDemo003, Demo003>();s...
Azure App Service on Linux で使用されている Linux ディストリビューション
Azure App Service on Linux で使用されている Linux ディストリビューションは何かが気になったので調べてみました。 Azure Portal 上の Azure App Service on Linux から、[開発ツール] - [高度なツール] を選択し、[移動] 選択します。 kudu service が起動します。上部のメニューから、[Bash] を選択します。 bash から、/etc/os-release ファイルを確認します。 $ cat /etc/os-release PRETTY_NAME="Debian GNU/Linux 10 (buster)" NAME="Debian GNU/Linux" VERSION_ID="10"...
Azure App Service on Linux 選択のメリット
C# での Web アプリの開発においては、.NET Core で、クロス プラットフォーム対応になり、現在では、稼働 OS を意識することなく開発を行うことができるようになりました。 とは言ってもアプリ開発を Windows 上で行っているので、あえて本番稼働の OS を Linux を選択することはないかなと思っていましたが、最近では、Azure App Service を使用する場合、Linux を選択して使用するようになりました。 その最たる理由は価格です。以下に主要なプランの価格の比較を行っています。 No. OS 共有(D1) Basic(B1) Standard(S1) Premium(P1v2) Isolated(I1) 1 Windows ...
Azure Web Apps ASP.NET Core 2.1 対応
以下の記事にもありますが、2018 年 5 月 30 日に、.NET Core 2.1 と ASP.NET Core 2.1 がリリースされました。 ASP.NET Core 2.1 への移行 ASP.NET Core 2.1 コード ベースへの移行 パフォーマンスの大幅な改善により、今後、.NET Core ベースのアプリケーションが増えていくことが予測されます。 .NET Core 2.0 から、2.1 への移行でもパフォーマンスの改善が体感できます。 そこで、前出の記事のようにアプリケーションを .NET Core 2.0 から 2.1 への移行を行い、Azure Web Apps に発行を行ったところ、以下のようなエラーが発生してしまいました。 資産ファイル...
HP Spectre x360 Convertible 13 SSD 換装
事前の準備 あるイベントの最後の参加特典として配られた HP Spectre x360 Convertible 13 ですが、スペックもそこそこで、まだまだ現役として使えます。 ただ、ハードディスク容量に不満が。標準で、128GB なので、昨今の開発環境等をセットアップするとすぐにいっぱいに。 最近のノートは、すべてマザーボードに直付けで、パーツの交換はできないことが多いのですが、調べてみると、ハードディスクは交換できることがわかりました。 もちろん、公式には、換装はサポートしていないため、換装した場合、メーカー保証は得られなくなると思いますので、その点は、ご留意ください。 メモリーも標準で 8GB で、何とかしたかったのですが、こちらは、やはり、交換でき...
Azure Web アプリ で、Apache 仮想ホストのようなサブドメインの定義
Apache では、以下のように、httpd.conf で、サブドメイン単位で、仮想ホストを定義でき、ドキュメント ルートも同単位で定義できる。 # vi /etc/httpd/conf/httpd.conf <virtualHost *:80>ServerName <サブドメイン 1>.<ドメイン名>DocumentRoot /var/www/html/<サブドメイン 1> </virtualHost> <virtualHost *:80>ServerName <サブドメイン 2>.<ドメイン名>DocumentRoot /var/www/html/<サブドメイン 2> </virtualHost> Azure の Web アプリで同様のことを実現する方法を記...
Windows 10 アップグレード後に、古いファイルを削除する
Windows 10 未満の OS から、Windows 10 へアップグレードした後、以前の OS のファイルを削除する方法。 1 カ月後に自動的に削除されるとあるが、これを手動で削除する。 [設定] - [システム] - [ストレージ] から、対象ドライブを選択。 [一時ファイル] - [Windows の以前のバージョン] - [以前のバージョンの削除] - [削除] を選択する。 ただし、この方法では、以前の Windows のイメージが格納されている "Windows.old" が削除できなかった。 よって、従来からの方法での以前のバージョンの Windows の削除を行う。 Windows.old が含まれるドライブを選択し、右ク...
最新の記事
- Entra ID においてアクセス許可へのユーザー同意を削除する
- .NET(C#) コンソールアプリで、Phi-3-vision を実行し画像を入力する
- .NET(C#) コンソールアプリで、Phi-3 を実行する
- Blazor WebAssembly から ASP.NET Core Web API を介した Azure OpenAI Service 応答ストリーム(Server-Side Events)の受信
- ASP.NET Core Web API を経由した Azure OpenAI Service 応答ストリーム(Server-Side Events)の受信
- Azure OpenAI Client Library で応答をストリームで受信する
- Azure OpenAI Client Library HTTP ログ出力を LoggerFactory に転送する
- .NET 8 コンソールアプリで、DI(Dependency Injection) する
- .NET コンソールアプリで、構成情報を appsettings.json からロードする
- Azure OpenAI Client Library HTTP ログ出力の有効化
人気の記事
- Visual Studio 2022 で Sass(.scss) をコンパイルする
- System.Drawing.Common の代替として Microsoft.Maui.Graphics を Linux で利用する
- Hyper-V Linux 統合サービスでマウスキャプチャを有効にする
- stat=Deferred Connection refused by [127.0.0.1]
- .NET 8 RC1 を Visual Studio 2022 で利用する
- Windows のライセンス認証で、エラーコード 0x80072EE2 が発生
- ASP.NET Core Web API を経由した Azure OpenAI Service 応答ストリーム(Server-Side Events)の受信
- .NET(C#) コンソールアプリで、Phi-3 を実行する
- HTML で円マークがバックスラッシュと表示されてしまう
- CentOS sendmail でのメールアカウント独自管理 (auxprop)