0
私のdockerファイルはNano Serverコンテナを取得し、自動的にJavaを追加します。Powershell Dockerを使ってNano Serverにサイレントインストール
# Get nano server
FROM microsoft/nanoserver
# Download file and set in docker container
ADD http://javadl.oracle.com/webapps/download/AutoDL?BundleId=225355_090f390dda5b47b9b721c7dfaa008135 \
'C:\\java\jre-8u151-windows-x64.exe'
# Silent install and delete install file
RUN powershell Start-Process -filepath C:\java\jre-8u151-windows-x64.exe -ArgumentList '/s,INSTALLDIR=c:\Java\jre1.8.0_151' -Passthru -Wait; \
Remove-Item C:\\java\jre-8u151-windows-x64.exe -Force
CMD powershell
プロセスは正常に動作しますが、Nano Serverではエラーを表示せずに何もインストールされません。しかし、Core Serverでは、それをインストールします。
サイレントインストールの結果は次のとおりです。
Handles NPM(K) PM(K) WS(K) CPU(s) Id SI ProcessName
------- ------ ----- ----- ------ -- -- -----------
3 476 1464 596 1 jre-8u151-windows-x64
しかし、その後、それはdir
コマンドでインストールされている場合、私がチェックしたときに、私は次のような結果を参照してください。
Mode LastWriteTime Length Name
---- ------------- ------ ----
d----- 12/21/2017 11:04 AM Program Files
d----- 7/16/2016 2:09 PM Program Files (x86)
d-r--- 11/3/2017 8:44 PM Users
d----- 12/21/2017 11:05 AM Windows
-a---- 7/24/2017 6:05 PM 65365056 jre-8u151-windows-x64.exe
-a---- 11/20/2016 12:32 PM 1894 License.txt
はどのように作ることをこのプロセスは正しく動作しますか、あるいはどのような代替手段を使用できますか?