сторонние репозитории
Посмотреть какие образы есть у нас на локальном репозитории (локальная машина):
docker images
Скачать образ с определённого источника к себе на локальный репозиторий:
docker image pull url
Пример:
docker image pull cr.yandex/crp4a5cge89sqtoqiuhj/elasticsearch:8.19.11
Скачает образ elasticsearch:8.19.11 Аналогично можно скачать другие образы:
docker image pull cr.yandex/crp4a5cge89sqtoqiuhj/memcached:1.6.40-alpine
docker image pull cr.yandex/crp4a5cge89sqtoqiuhj/memcached:1.6.40-alpine
docker image pull cr.yandex/crp4a5cge89sqtoqiuhj/postgres:17.7-alpine
docker image pull cr.yandex/crp4a5cge89sqtoqiuhj/redis:7.4.7-alpine
docker image pull cr.yandex/crp4a5cge89sqtoqiuhj/zammad:6.5.2-85
Данный набор образов соотвествует образам, необоходимым для запуска zammad в контейнере, далее можно скачать например с офф github compose обвязочку для zammad и запустить её
git clone https://github.com/zammad/zammad-docker-compose.git
После перехода в папку, где у нас скачался zammad мы даём команду:
docker compose up -d
В процессе доккер проверит образы и сразу же без дополнительных скачиваний запустит все необходимые контейнеры
Частные случаи - читать аккуратно!
Как разрешить docker’у использовать образы с реджистри по http
создать /etc/docker/daemon.json и прописать в нём:
{
"insecure-registries" : [ "10.0.0.7:5000" ]
}
Как использовать образы с других реджистри
по умолчания докер использует docker.io, если в названии образа не указан домен. т.е. docker pull redis ~= docker pull docker.io/library/redis
чтобы использовать свой реджистри - просто перед названием образа написать свой реджистри: redis:1.1.1 -> 10.0.0.1:5000/redis:1.1.1.1
это название образа - т.е. дописать в начале названия образа в поле image в compose файле (либо заменить существующий домен, в случае ghcr.io)
На тему моего реджистри в клауде
на нем есть следующие образы:
cr.yandex/crp4a5cge89sqtoqiuhj/elasticsearch:8.19.11
cr.yandex/crp4a5cge89sqtoqiuhj/memcached:1.6.40-alpine
cr.yandex/crp4a5cge89sqtoqiuhj/postgres:17.7-alpine
cr.yandex/crp4a5cge89sqtoqiuhj/redis:7.4.7-alpine
cr.yandex/crp4a5cge89sqtoqiuhj/zammad:6.5.2-85
это пример образов, что есть в zammad. Для их использования необходимо заменить образ ghcr.io/zammad/zammad:6.5.2-85 на cr.yandex/crp4a5cge89sqtoqiuhj/zammad:6.5.2-85 (там нет второго /zammad/, это прикол клауда)
На тему зеркал
в /etc/docker/daemon.json можно вписать:
{
"registry-mirrors": ["https://<my-docker-mirror-host>"]
}
тогда докер будет по умолчанию скачивать с этого зеркала ещё пример замены:
image: ${IMAGE_REPO:-ghcr.io/zammad/zammad}:${VERSION:-6.5.2-85} -> image: cr.yandex/crp4a5cge89sqtoqiuhj/zammad:6.5.2-85