GNU/Linux >> Linux の 問題 >  >> Linux

ストック Alpine 3.12 Docker イメージに PHP7.4 をインストールすることは可能ですか?

高山の端を使用:

FROM alpine:edge
RUN apk add php
RUN php -v

これは、2 つのアルパイン バージョンを混在させることを提案する Adiii 回答の更新です (3.12edge )、これはひどい結果であり、何が悪かったのかを理解するのは困難です。 3.12 から 1 つのパッケージが混在しているため、ライブラリ エラーが発生する可能性があります。 edge のその他のパッケージ :

/ # php -m
PHP Warning:  PHP Startup: Unable to load dynamic library 'igbinary.so' (tried: /usr/lib/php7/modules/igbinary.so (Error relocating /usr/lib/php7/modules/igbinary.so: php_error_docref0: symbol not found), /usr/lib/php7/modules/igbinary.so.so (Error loading shared library /usr/lib/php7/modules/igbinary.so.so: No such file or directory)) in Unknown on line 0 

以下の Docker イメージを使用できます。

FROM alpine:3.12
RUN apk add --no-cache  --repository http://dl-cdn.alpinelinux.org/alpine/edge/community php
RUN php -v

出力

Step 3/3 : RUN php -v
 ---> Running in 9900e66f4b71
PHP 7.4.7 (cli) (built: Jun 14 2020 23:46:20) ( NTS )
Copyright (c) The PHP Group
Zend Engine v3.4.0, Copyright (c) Zend Technologies


本格的な例を見たい場合は、ベンダーの Dockerfile を調査するのが常に最善です。 .

これは画像 php:7.4-fpm-alpine3.12 からのものです :

https://github.com/docker-library/php/blob/86c8ec4d387132b65dbe6c5ab1747f858e03852e/7.4/alpine3.12/fpm/Dockerfile

ご覧のとおり、PHP がスムーズに実行され、起動/コンテキストの問題が解決されるように、多くの機能が追加されています。


Linux
  1. Ubuntu18.04LTSにPHP7.3をインストールする方法

  2. Ubuntu18.04にPHP7.3をインストールする方法

  3. Debian9にPHP7.3をインストールする方法

  1. PHP 7.4 / 7.3 / 7.2/7.1をDebian10/Debian9にインストールする方法

  2. Ubuntu 18.04 /Ubuntu16.04にPHP7.4/ 7.3/7.2をインストールする方法

  3. RuntimeException Zip PHP 拡張機能がインストールされていません

  1. PHPをDebian10(Buster)にインストールする方法

  2. Ubuntu14.04にPHP7をインストールする方法

  3. Ubuntu15.04にPHP7をインストールする方法