💻
Docker & .NETでWindowsサービスをが起動できない対処方法
.NET Core 3.1以降で提供されたMicrosoft.Extensions.Hosting.WindowsServicesを利用してWindowsサービスを実装した場合、2021年7月現在、起動時に以下のエラーが発生して実行することができません。
(1053): The service did not respond to the start or control request in a timely fashion.
これはWorkerテンプレートの問題で、.NET Core 2.1以前のようにSystem.ServiceProcess.ServiceControllerを利用することで障害は回避できます。
挙動的にMicrosoft.Extensions.Hosting.WindowsServicesの不具合だと思いますので、いずれかのタイミングで修正されると思いますが、それまではSystem.ServiceProcess.ServiceControllerを使う必要があります。
具体的な実装は以下を参考にしてください。
Discussion