DockerでWindows Server Coreを使用する
DockerはLinuxベースのイメージですが、Windows Server Coreというイメージをpullすることが出来ます。
常駐アイコンを右クリックし、「Switch to Windows Containers…」をクリックします。
Dockerをリスタートします。
コマンドプロンプトで以下実行して、pullします。
C:\>docker run mcr.microsoft.com/windows/servercore:ltsc2019
10分くらいかかると思います。
これでpullできました。次にコンテナ作成します。
PowerShellで起動
docker run -it mcr.microsoft.com/windows/servercore:ltsc2019 powershell
exitするとコンテナも停止します。
コマンドプロンプトで起動
docker run -it mcr.microsoft.com/windows/servercore:ltsc2019 cmd
exitするとコンテナも停止します。
cmdでコマンドラインからソフトウェアをインストール
Windowsのパッケージマネージャーのchocolateyをインストールします。
https://docs.chocolatey.org/en-us/choco/setup※現時点でのインストール方法です
@"%SystemRoot%\System32\WindowsPowerShell\v1.0\powershell.exe" -NoProfile -InputFormat None -ExecutionPolicy Bypass -Command "[System.Net.ServicePointManager]::SecurityProtocol = 3072; iex ((New-Object System.Net.WebClient).DownloadString('https://chocolatey.org/install.ps1'))" && SET "PATH=%PATH%;%ALLUSERSPROFILE%\chocolatey\bin"
chocoとタイプすればバージョン確認できます。
C:\> choco Chocolatey v0.10.15 Please run 'choco -?' or 'choco <command> -?' for help menu.
chocolateyでawscliインストール
choco install awscli
これでawscliをインストールします。pathを反映させる場合はその後に必ずrefreshenv
を実行します。
C:\>refreshenv Refreshing environment variables from registry for cmd.exe. Please wait...Finished..
これでawsコマンドが使えるようになります。※echo %PATH%
で確認
C:\>where aws C:\Program Files\Amazon\AWSCLIV2\aws.exe
aws configure
C:\>aws configure AWS Access Key ID [None]: AKIAU4WZY6O8MGZJ33BV AWS Secret Access Key [None]: par90qb7m4GrR4MIA0U0JV5aPLAP5ZtGE2JnE5wQ Default region name [None]: ap-northeast-1 Default output format [None]:
上記のアクセスキーなどは適当ですが、この設定をすればaws cliコマンドが実行できるコンテナとすることが出来ます。
AWS Batchでは使えない
ECRにpushしてAWS BatchをWindowsコンテナで行いたい場合などは、このイメージからコンテナを作成し、イメージ化してECRにpushすることは出来ます。
ですが肝心のAWS Batchのコンピューティング環境にWindowsが対応していません。
参考サイト
KHI入社して退社。今はCONFRAGEで正社員です。関西で140-170/80~120万から受け付けております^^
得意技はJS(ES6),Java,AWSの大体のリソースです
コメントはやさしくお願いいたします^^
座右の銘は、「狭き門より入れ」「願わくは、我に七難八苦を与えたまえ」です^^
コメント