FROM ubuntu

The directory name is invalid. The command 'cmd /S /C C:\install\jdk.exe' returned a non-zero code: 1

C:\Users

icolas\dock docker build -t java . Sending build context to Docker daemon 2.048 kB Step 0 : FROM windowsservercore --- 0d53944cb84d Step 1 : RUN @powershell -NoProfile -ExecutionPolicy Bypass -Command "iex ((new-object net.webclient).DownloadString('https://chocolatey.org/install.ps1'))" && SET PATH=%PATH%;%ALLUSERSPROFILE%\chocolatey\bin --- Using cache --- 82076c2bad03 Step 2 : RUN chocolatey install -y jdk8 --- Using cache --- 84f6a8356fe3 Successfully built 84f6a8356fe3 C:\Users

icolas\dock docker run -it --rm java cmd ...

C:\Windows\system32 java -version java version "1.8.0_60" Java(TM) SE Runtime Environment (build 1.8.0_60-b27) Java HotSpot(TM) 64-Bit Server VM (build 25.60-b23, mixed mode) C:\Windows\system32

I've been experimenting a few with Windows Docker Containers, aka "". Windows 2016 will offer kernel-level container capabilities and the adequate glue code to offer Docker API (actually, RunC ) so we can use Docker to create and run containerized Windows applications.Please note : this is all about Windows applications running on Windows 2016, Docker is not a Virtual Machine runtime, so you won't get existing Linux images running on Windows 2016, neither can you run some Windows software on your Linux system.So, I've created a Windows 2016 VM on Azure (which was simpler than downloading 6Gb from MSDN), following https://msdn.microsoft.com/virtualization/windowscontainersThe VM comes with a single image pre-installed : windowsservercore. We will use this base image to create our own images, just like we used to do starting our Dockerfile with. Most significant difference is this base image is 9Gb large, but hopefully you will never have to download it as it will come pre-installed on container-enabled windows releases.First thing I noticed, starting a new container takes some significant time. Starting a linux docker container takes few tenths of a seconds, so that you feel like your program started without delay. Running a windows container takes 14s on my experiment (running on an Azure D3 box : 4 core 14Gb).Second thing, my plan was to experiment by creating a windows jenkins-slave container, and for this purpose I need to download a JDK. I had to google a few then switch to PowerShell so I can runcommand to download Oracle JDK windows 64 installer.Then I used notepad.exe (sic) to edit a Dockerfile, to install JDK in a container. My experiments stopped here, as I can't find how to launch the installer, always get weird error "Tried also with unix style path, same issue.I also got a container I can't stop. I have no idea about this container state, but it's annoying I can't kill it, as docker daemon is supposed to have super-power on all container running and can force a SIGKILL, or windows equivalent, which seems to be only partially implemented. But let's remember we are running on a beta preview here.Conclusion : considering Microsoft commitment to provide a container solution on Windows is just one year old, this is an encouraging preview. There's also lot's we have to learn to adapt the habits we have for Linux-based docker image to Windows, it seems the windows docker runtime do use Unix paths, which might results in some confusion when running windows commands in a Dockerfile. But the feeling I have after this experiment is I'll come back in few months when this get polished a few.As suggested by David , I've tried to use Chocolatey and use it to install a JDK. And this works well !Next step is for me to use this to setup a JNLP windows jenkins slave and check how it goes compared to a classic windows VM.