1. ホーム
  2. docker

[解決済み] Dockerfileは他のDockerfileを拡張することができますか?

2023-03-22 10:40:15

質問

PHPのDockerfileはこのようなものです。

FROM php:7-fpm
ENV DEBIAN_FRONTEND noninteractive

RUN apt-get update && \
    apt-get install -y git libicu-dev libmagickwand-dev libmcrypt-dev libcurl3-dev jpegoptim
RUN pecl install imagick && \
    docker-php-ext-enable imagick

RUN docker-php-ext-install intl
RUN docker-php-ext-install pdo_mysql
RUN docker-php-ext-install opcache
RUN docker-php-ext-install mcrypt
RUN docker-php-ext-install curl
RUN docker-php-ext-install zip

そして、最初のDockerfileをベースに、Xdebugやその他のPHP拡張を追加した別のDockerfileを作成したいと思います(開発用)。

メインの Dockerfile を拡張する (書き換えることなく) Dockerfile を作成することはできますか?

どのように解決するのですか?

それはまさに、あなたの FROM php:7-fpm から Dockerfile を拡張しています。 php イメージの拡張( 7-fpm タグ) を Dockerfile の内容で作成します。

つまり、Dockerfileからイメージを構築した後に

docker build -t my-php-base-image .

で始まる新しいDockerfileを作成することで、それを拡張することができます。

FROM my-php-base-image