Use docker-compose to pull images from private repository
Use docker login
command. (Official doc)
Enter your credentials, and then you can pull private image, only if you have an access.
If you want to login to a self-hosted registry you can specify this by adding the server name.
docker login localhost:8080
Thanks to @herm's comment, if you want to use swarm, use : --with-registry-auth
option.Personnaly, I use this command :
docker stack deploy --with-registry-auth --compose-file dev.compose.yml myProjectName