Как создать базовый образ в docker-compose

У меня есть несколько изображений с общим кодом, но они не совсем одинаковые. Есть ли способ создать базовый образ в 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

Базовый файл докеров

FROM php:7.2-fpm-alpine

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

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

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 
Развертывание модели машинного обучения с помощью Flask - Angular в Kubernetes
Развертывание модели машинного обучения с помощью Flask - Angular в Kubernetes
Kubernetes - это портативная, расширяемая платформа с открытым исходным кодом для управления контейнерными рабочими нагрузками и сервисами, которая...
Как создать PHP Image с нуля
Как создать PHP Image с нуля
Сегодня мы создадим PHP Image from Scratch для того, чтобы легко развернуть базовые PHP-приложения. Пожалуйста, имейте в виду, что это разработка для...
4
0
758
1

Ответы 1

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

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

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

Я знаю о реестре, но это для стабильных готовых образов. Я ищу решение для локальной разработки, которое будет на 100% обрабатываться на моем компьютере, возможно, за один docker-compose.

HubertNNN 10.10.2018 14:36

Другие вопросы по теме