Azure / service-fabric-mesh-preview

Service Fabric Mesh is the Service Fabric's serverless offering to enable developers to deploy containerized applications without managing infrastructure. Service Fabric Mesh , aka project “SeaBreeze” is currently available in private preview. This repository will be used for tracking bugs/feature requests as GitHub issues and for maintaining the latest documentation.
MIT License
83 stars 10 forks source link

Docker Windows Compatibility Problem when Deploy Mesh Apps to Azure. #361

Closed pmgriffin closed 5 years ago

pmgriffin commented 5 years ago

Hi Folks,

having an issue deploying a Service Fabric Mesh Application to Azure using Visual Studio 2017. As soon as i right click on the SFM App and choose "Publish" i get a popup stating

The application contains one or more Docker images based on Windows Server, version 1809 or higher, which is not supported by the remote endpoint. Please update the Docker files to use images that are based on the Windows Server, version 1803 or lower.

My interpretation of that is that the docker version on windows machine i am developing on is incompatible with the Windows version of the target deployment host. I have very little docker knowledge.

My setup is as follows: Development machine is a "Windows Server 2019 with Containers" machine running on Azure DevTestLabs. Windows build 10.0.17763. Docker Enterprise is installed, docker version 18.09.4 Visual Studio 2017 Community Edition version 15.9.11 Microsoft Azure Service Fabric SDK 3.3.654 Microsoft Azure Service Fabric Mesh SDK (Preview) 3.3.654

I can successfully run a sample Orleans Service Fabric Mesh locally on a 1 node mesh cluster. Docker works fine.

As soon as i got to publish i hit the issue above. My sense is that it is docker compatibility issues. I thought maybe it was due to being on Windows Server 2019. I've tried installed the exact same setup on Windows Server 2016 with Containers but docker fails to pull any images ... even hello-world results in

Unable to find image 'hello-world:nanoserver' locally nanoserver: Pulling from library/hello-world C:\Program Files\Docker\docker.exe: no matching manifest for unknown in the manifest list entries.

Could someone advise as to a configuration, docker version and windows version where they have been able to successfully deploy an SFM app to azure ?

Thanks for your time!

mattrowmsft commented 5 years ago

I think the tooling is checking this locally. In the meantime we added support for this windows version in the service. If you use ARM templates manually instead of VS then I think this would work.

pmgriffin commented 5 years ago

Hi Matt,

thanks for your reply. I managed to resolve this, by simply placing

FROM microsoft/windowsservercore:1709

At the top of each Docker File.