I'm using docker-compose command to run multiple containers. The problem is my docker-compose has to pull some images from the public repository and some from a private repository. What I'm planning to do is push all required images to the private repository but how can I make docker-compose pull the images from the private repository.
In short -> How to point to a private repository when the images are only available there
The docker-compose spec says: pull_policy defines the decisions Compose implementations will make when it starts to pull images.
Log in to Docker Hub On your laptop, you must authenticate with a registry in order to pull a private image. Use the docker tool to log in to Docker Hub. See the log in section of Docker ID accounts for more information.
4 Please login prior to pull: Login with your Docker ID to push and pull images from Docker Hub. If you don't have a Docker ID, head over to https://hub.docker.com to create one.
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
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With