Most likely the virtual repository you're trying to push to only has remote repositories configured as the target to be able to push to. I tried to replicate your issue on my own Artifactory instance using a two different docker repositories (both virtual):
For the first I have both local and remote repositories configured (the configured targets are docker-local, bintray-docker-remote, docker-remote
)
$ docker tag mynewimage:latest myartifactory.server/docker/mynewimage
$ docker push myartifactory.server/docker/mynewimage
The push refers to repository [myartifactory.server/docker/mynewimage]
7bff100f35cb: Layer already exists
latest: digest: sha256:3d2e482b82608d153a374df3357c0291589a61cc194ec4a9ca2381073a17f58e size: 528
The second repository only has remote repositories configured (docker-remote
)
$ docker tag mynewimage:latest myartifactory.server/newdocker/mynewimage:latest
$ docker push myartifactory.server/newdocker/mynewimage:latest
The push refers to repository [myartifactory.server/newdocker/mynewimage]
7bff100f35cb: Retrying in 1 second
unknown: Unable to upload into a virtual repository without default local deployment configured.
So with the second one I have the exact same issue as you have. You can see the configured repositories on your Artifactory server on https://your-artifactory-server/artifactory/webapp/#/admin/repositories/virtual