3

カスタムスケジュールされたタスクを含むコンテナを作成しようとしています。 これは私のdockerfileです:Windows 2016コアコンテナ内でスケジュールされたタスクを作成しようとするとエラーが発生する

FROM microsoft/windowsservercore 
RUN schtasks /create /tn hello /sc daily /st 00:00 /tr "echo hello" 

私は次のエラーを取得:実行されているデフォルトのWindowsコアコンテナに装着すると、コマンドを実行しているとき、私も同じエラーが出る

ERROR: The task XML contains a value which is incorrectly formatted or out of range. (43,4):Task:

を。

言うまでもなく、このコマンドは、標準のWindows 2016サーバーでうまく機能します。

Windowsコンテナのバグのようですが、それについての既知の問題は見つかりませんでした。

わかりやすくなる可能性があります。

+0

どれ運を使用することができますか?私もこの問題にぶつかっています – texens

+0

いいえ、私はホストOSでスケジュールを作成しました。 – yossiz74

答えて

1

問題はコンテナユーザーと関係があります。既定では、スケジュールされたタスクが現在のユーザーと共に作成されます。コンテナユーザは、Scheduled TaskコマンドがXMLに解析できない特別なものである可能性があります。

Windowsコンテナのschtasksコマンドには、ユーザ/ru(必要に応じてパスワード/rp)を渡す必要があります。

これは

FROM microsoft/windowsservercore 
RUN schtasks /create /tn "hellotest" /sc daily /tr "echo hello" /ru SYSTEM 

それはシステムアカウントでコマンドを実行します動作します。あなたは(私のような)のPowershellのファンなら

、あなたは、このエラーでこの

FROM microsoft/windowsservercore 

SHELL ["powershell", "-Command", "$ErrorActionPreference = 'Stop'; $ProgressPreference = 'SilentlyContinue';"] 

RUN $action = New-ScheduledTaskAction -Execute 'echo ""Hello World""'; \ 
    $trigger = New-ScheduledTaskTrigger -Daily -At '1AM'; \ 
    Register-ScheduledTask -TaskName 'Testman' -User 'SYSTEM' -Action $action -Trigger $trigger -Description 'Container Scheduled task test'; 
+0

スポットオン!ありがとうございました! – yossiz74

関連する問題