mirror of
https://github.com/ilyamak04/DevOps.git
synced 2025-04-04 23:24:51 +02:00
2.3 KiB
2.3 KiB
Аргументы сборки (ARG)
не сохраняются в конечном образе. ARG используется для передачи значений на этапе сборки. Эти значения доступны только во время сборки образа и не сохраняются в конечном образе. Также ARG не сохраняется в слоях образа, т.е. с помощью docker history
значение переменной не посмотреть. Нельзя получить доступ к значению ARG из финального образа.
Про ВОЛЮМЫ
Например, есть такой волюм
./infrastructure/db/create_db.sql:/docker-entrypoint-initdb.d/create_db.sql
если ./infrastructure/db/create_db.sql
не будет на хосте, Docker создаст директории с указанными именами вместо файлов
Как докер ищет образы?
- Докер сначала проверяет есть ли образ с указанным именем и тегом локально на хосте (в кэше Docker)
- Если образ не найден локально, докер ищет его в registry по умолчанию, то есть в Dockerhub, Docker пытается спуллить образ с докер хаб, если тэг не указан, Docker использует тег
latest
по умолчанию - Дальше Docker идет в настроенный Docker registry и ищет образ там, например
image: registry.example.com/myimage:tag
- Если образ не найден и в docker-compose.yml указана секция build, Docker создаст образ локально из Dockerfile, который находится в указанной директории. Пример в docker-compose.yml:
services:
myapp:
build:
context: .
dockerfile: Dockerfile
Последовательность
- Ищет локально на хосте.
- Ищет на Docker Hub.
- Ищет в частных реестрах (если указан).
- Сборка из Dockerfile (если указана опция build в docker-compose.yml).