PHP で OpenSSL をインストールする Dockerfile
From php:apache RUN apt-get update && apt-get install -y \ libssl-dev \ openssl \ ssl-cert \ && apt-get clean \ && rm -rf /var/lib/apt/lists/* \ && a2enmod ssl \ && a2ensite default-ssl
注意点
- PHP で OpenSSL モジュールを使えるようするために、Dockerfile に
docker-php-ext-install openssl
などと書く必要は無い。 - ssl-cert はいわゆるオレオレ証明書を作るために入れている。そのため、本番環境などではインストール不要となるかもしれない。
- docker-compose.yml などで、ports の設定を忘れないようにすること。
docker-compose.yml でのports の設定は例えば次のようになります。
services: php_apache: build: context: ./php_apache ports: - 80:80 - 443:443 ... 略 ...
おまけ。ビルド等の手順
# ビルド docker-compose build # 起動 docker-compose up -d # コンテナに入る docker container exec -it docker-lamp-laravel_php_apache_1 bas # PHP モジュールの確認 php -m # Apache モジュールの確認 apachectl -M # Volume も含めてコンテナを削除 docker-compose down -v
おわりに
Laravel の要件に、OpenSSL PHP Extension とありました。
それで、Docker の php:apache に入れてみようと試行錯誤したのが本投稿となります。
最終的にスッキリとした Dockerfile となりましたけれども、やっぱりいくつかつまづきました。
良い経験となりました♪
以上です。
「Docker の php:apache で OpenSSL を有効にする Dockerfile 等」への1件の返信
[…] Docker の php:apache で OpenSSL を有効にする Dockerfile 等 – oki2a24 […]