旋回までのあらすじ
Docker で作った PHP 環境で composer を使おうとしたら入ってなかったので使えるようにしたメモ
docker-compose.yml
version: '3' services: api: build: context: ./php dockerfile: Dockerfile volumes: - ./api:/var/www depends_on: - db
Dockerfile に compose のイメージを取ってくる指定を追加する
(optimal) create your own build image and install Composer inside it.
Note: Docker 17.05 introduced multi-stage builds, simplifying this enormously:COPY --from=composer /usr/bin/composer /usr/bin/composercf. https://hub.docker.com/_/composer:
./php/Dockerfile
FROM php:7.4-fpm RUN apt-get update RUN apt-get install -y vim RUN docker-php-ext-install pdo_mysql COPY php.ini /usr/local/etc/php/ COPY --from=composer:latest /usr/bin/composer /usr/bin/composer
composer:latest
の指定で最新版の composer イメージ使用する
※ docker が v17.05 以上である必要がある
docker-compose up --build
で再ビルドして composer のコマンドが使えればOK
$ docker-compose exec api composer --version Composer version 1.10.7 2020-06-03 10:03:56
api
の部分は docker-compose.yml
で指定したコンテナ名に適時変更してください
導入簡単だった。
<完>
[参考]