1

Windows server2016 の Docker コンテナーにサービスをインストールしようとしています。

そこにサービスを配置して Powershell を実行するだけです。

New-Service -Name Bob -StartupType Automatic -BinaryPathName .\SVCHost.exe

ただし、コンテナにサービスを追加すると、結果が得られます。

PS C:\Program Files\COMPANY\Repository> start-service -Name bob
start-service : Service 'bob (Bob)' cannot be started due to the following error: Cannot start service Bob on computer '.'.
At line:1 char:1
+ start-service -Name bob
+ ~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : OpenError: (System.ServiceProcess.ServiceController:ServiceController) [Start-Service], ServiceCommandException

ユーザーを作成し、起動ユーザーの資格情報を設定しようとしましたが、同じ問題が発生しました。

https://github.com/Microsoft/sql-server-samples/blob/master/samples/manage/windows-containers/mssql-server-2016-express-windows/dockerfileを見ると、インストールに sqlexpress を使用していることがわかりますサービスの。

簡単に言えば... Windowsサーバー2016 Dockerコンテナにサービスを登録するにはどうすればよいですか

4

2 に答える 2

1

また、microsoft/iis の Dockerfileも見てください。コンテナー内での実際の作業は IIS Windows サービスで行われますが、エントリポイントは というバイナリServiceMonitor.exeです。モニターは Windows サービスをチェックし、サービスが失敗すると exe が失敗するため、Docker はコンテナーが異常であることを認識します。

于 2016-10-05T14:02:37.777 に答える