2022-03-09 12:57:07 +01:00
# docker compose pull
<!-- - MARKER_GEN_START -->
2024-07-17 11:27:58 +02:00
Pulls an image associated with a service defined in a `compose.yaml` file, but does not start containers based on those images
2022-03-09 12:57:07 +01:00
### Options
2024-02-14 20:02:37 +01:00
| Name | Type | Default | Description |
|:-------------------------|:---------|:--------|:-------------------------------------------------------|
2024-07-17 11:27:58 +02:00
| `--dry-run` | `bool` | | Execute command in dry run mode |
| `--ignore-buildable` | `bool` | | Ignore images that can be built |
| `--ignore-pull-failures` | `bool` | | Pull what it can and ignores images with pull failures |
| `--include-deps` | `bool` | | Also pull services declared as dependencies |
2024-02-14 20:02:37 +01:00
| `--policy` | `string` | | Apply pull policy ("missing"\|"always") |
2024-07-17 11:27:58 +02:00
| `-q` , `--quiet` | `bool` | | Pull without printing progress information |
2022-03-09 12:57:07 +01:00
<!-- - MARKER_GEN_END -->
2021-03-11 16:20:30 +01:00
## Description
2024-02-14 20:02:37 +01:00
Pulls an image associated with a service defined in a `compose.yaml` file, but does not start containers based on those images
2021-03-11 16:20:30 +01:00
2022-03-09 13:24:09 +01:00
## Examples
2021-03-11 16:20:30 +01:00
2023-10-31 11:40:48 +01:00
Consider the following `compose.yaml` :
2021-03-11 16:20:30 +01:00
```yaml
services:
db:
image: postgres
web:
build: .
command: bundle exec rails s -p 3000 -b '0.0.0.0'
volumes:
2021-09-13 17:14:32 +02:00
- .:/myapp
2021-03-11 16:20:30 +01:00
ports:
2021-09-13 17:14:32 +02:00
- "3000:3000"
2021-03-11 16:20:30 +01:00
depends_on:
2021-09-13 17:14:32 +02:00
- db
2021-03-11 16:20:30 +01:00
```
2022-03-09 13:24:09 +01:00
If you run `docker compose pull ServiceName` in the same directory as the `compose.yaml` file that defines the service,
Docker pulls the associated image. For example, to call the postgres image configured as the db service in our example,
2021-03-11 16:20:30 +01:00
you would run `docker compose pull db` .
2021-09-13 17:14:32 +02:00
```console
2021-03-11 16:20:30 +01:00
$ docker compose pull db
[+] Running 1/15
⠸ db Pulling 12.4s
⠿ 45b42c59be33 Already exists 0.0s
⠹ 40adec129f1a Downloading 3.374MB/4.178MB 9.3s
⠹ b4c431d00c78 Download complete 9.3s
⠹ 2696974e2815 Download complete 9.3s
⠹ 564b77596399 Downloading 5.622MB/7.965MB 9.3s
⠹ 5044045cf6f2 Downloading 216.7kB/391.1kB 9.3s
⠹ d736e67e6ac3 Waiting 9.3s
⠹ 390c1c9a5ae4 Waiting 9.3s
⠹ c0e62f172284 Waiting 9.3s
⠹ ebcdc659c5bf Waiting 9.3s
⠹ 29be22cb3acc Waiting 9.3s
⠹ f63c47038e66 Waiting 9.3s
⠹ 77a0c198cde5 Waiting 9.3s
⠹ c8752d5b785c Waiting 9.3s
2022-07-04 21:07:35 +02:00
```
2023-01-03 10:54:03 +01:00
2023-10-31 11:40:48 +01:00
`docker compose pull` tries to pull image for services with a build section. If pull fails, it lets you know this service image must be built. You can skip this by setting `--ignore-buildable` flag.