1

次のコマンドを使用して、Windows Server 2016 Standard に正しくインストールされるサービス アプリケーションがあります。

PS C:\Service> c:\\mysvc\\mysvc.exe -install
Service installed successfully

次を使用してDockerfileで同じことを実行すると:

RUN c:\\mysvc\\mysvc.exe -install

次の出力が得られます。

コマンド「cmd /S /C c:\svc\mysvc.exe -install」がゼロ以外のコードを返しました: 3221225781

なぜ動作が異なるのか、またはエラーの原因についてより良いアイデアを得るためにどこをチェックできるのかわかりません。

4

1 に答える 1

1

この種の問題をデバッグするための便利なヒントは、基本イメージを対話型コンテナーで実行し、Dockerfile の手順に従って、さらに有用な出力が得られるかどうかを確認することです。

あなたの場合、次のようなものです:

docker run -it --name temp microsoft/windowsservercore cmd

次に、Windows ホストで別のコマンドを実行します。

docker cp mysvc.exe temp:c:/mysvc.exe

そして、インタラクティブ コンテナ run に戻りますc:\mysvc -install

出力が役に立たない場合は、ここで質問に詳細を追加できます-DockerfileとWindowsサービスに関する情報。

于 2016-10-19T15:27:41.430 に答える