Как создать базовый образ в docker-compose - PullRequest
0 голосов
/ 10 октября 2018

У меня есть несколько изображений, которые имеют общий код, но не совпадают.Есть ли способ создать базовый образ в docker-compose, чтобы он не запускался сам по себе при выполнении docker-compose up, и я смогу расширить его в своих файлах Docker?

Вот пример того, что я хочу сделатьдостижения:

version: '3'
services:
    php:
        build:
            context: .
            dockerfile: ./php/Dockerfile

    php-fpm:
        build:
            context: .
            dockerfile: ./php-fpm/Dockerfile

    php-cron:
        build:
            context: .
            dockerfile: ./php-cron/Dockerfile

    php-worker:
        build:
            context: .
            dockerfile: ./php-worker/Dockerfile

Базовый файл Docker

FROM php:7.2-fpm-alpine

RUN docker-php-ext-install bcmath
... and other extensions

И другие файлы Docker (с небольшими вариациями):

php-fpm

FROM my-docker-compose:php

RUN docker-php-ext-install php-fpm

CMD php-fpm 

php-cron

FROM my-docker-compose:php

COPY php/crontab /tmp/crontab
RUN /usr/bin/crontab -u www-data /tmp/crontab

CMD crond 

1 Ответ

0 голосов
/ 10 октября 2018

Обычно вы выполняете это, сохраняя ваши базовые образы в реестре Docker.Вы можете хранить их в общедоступном реестре (https://hub.docker.com) или в каком-либо частном реестре (размещенном в облаке в нашем помещении).

Вот дополнительная информация о реестре Docker: https://docs.docker.com/registry/

Некоторая дополнительная информация по использованию базовых изображений: https://docs.docker.com/develop/develop-images/baseimages/

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...