Service-fabric: Upgrade from Runtime 6.1 to 6.2, not able to run docker image available locally only

Created on 8 May 2018  路  6Comments  路  Source: microsoft/service-fabric

Scenario:

  1. Build locally docker image
  2. Run it using Service Fabric

With SF 6.1.456, no issue, upgraded this morning to 6.2 and getting the following error:pub

FinishActivateContainer: replyBody.Error=FABRIC_E_INVALID_OPERATION, replyBody.ErrorMessage=System.Fabric.FabricException (-2147017731)
Container image download failed for ImageName=microsoft/dynamics-server:latest. DockerRequest returned StatusCode=NotFound with ResponseBody=.Please check if image is present in repository or repository credentials provided are correct..

A docker images shows:

PS C:\src\Nav\Platform\Fabric> docker images
REPOSITORY                      TAG                              IMAGE ID            CREATED             SIZE
microsoft/dynamics-server   latest                           9865aaf0c1f5        29 minutes ago      15.5GB

Reverting to 6.1 fixed immediately the issue.

It seems that service fabric now always tries to do a "docker pull microsoft/dynamics-server", whereas 6.1 if the image was available locally was just using it.

status-last6months status-olderthan1year

Most helpful comment

In TIE and PROD we are always using specific build number, it's only for local devbox development that we don't really want to change version of container everytime we rebuild it (and update the parameter etc...).

So what should be the workaround? Should we create a "dev" tag or something like that to prevent SF 6.2 to try to pull the container image?

All 6 comments

@harahma @tugup do you know of any behaviour change ?

Can you share your ServiceManifest.xml

The behavior in 6.2 has been changed to require explicitly specifying container image tag. In ServiceManifest you need to explicitly specify a tag for container image. When no tag is specified, SF assumes latest and tries to pull from repository.

Just to add, you should do imageName:latest in ServiceManifest. Also, it is not recommended to use latest because then you don't know which version you are upgrading to.

In TIE and PROD we are always using specific build number, it's only for local devbox development that we don't really want to change version of container everytime we rebuild it (and update the parameter etc...).

So what should be the workaround? Should we create a "dev" tag or something like that to prevent SF 6.2 to try to pull the container image?

Please re-open if you are still facing this issue, but closing at this time.

Was this page helpful?
0 / 5 - 0 ratings

Related issues

KTazayan picture KTazayan  路  3Comments

spottedmahn picture spottedmahn  路  5Comments

srivathsanvlb picture srivathsanvlb  路  3Comments

vany0114 picture vany0114  路  5Comments

sxp-sme picture sxp-sme  路  9Comments