2017-11-13 10 views
0

私はこのDocker instance of a linux debian:jessieをPHP 5.6で実行しています。私のphp.iniはどこからロードされていますか?

これは私のphpinfoの一部です:

enter image description here

我々はphp.ini

/usr/local/etc/php 

に配置する必要があり、これは私が内部の/ usr /ローカルの/ etc持っているものである見ることができるように/

enter image description here

しかし、内部にphp.iniはありません。

I一方、私は場所を正確に私のphp.iniが読み込まれた中であるから、だから、

enter image description here

内のphp.iniを持っていますか?

私たちはphpプロセスを実行していないのですが、phpが正常であるように見えます - 画面にphpinfoが表示されています。

enter image description here

+0

あなたはDockerコンテナに入れられていますか? –

+0

はい他の端末からアクセスできます – zwitterion

+0

これはDockerコンテナ内のディレクトリですか? –

答えて

0

答えとして、それを試してみましょう:

はそれがまったく存在しない場合、PHPはデフォルトのオプションを実行することを意味しています。

ドッカーファイルを見ると、「クリーン」OSから始まり、ApacheとPHPがインストールされます。しかし、php.iniファイルをPHPインストールから/ usr/local/etc/phpにコピーすることはありません。実際には31行目と32行目でconf.dディレクトリが作成されますが、それはそれです。

ドッカーファイルの最後に、php.ini-productionを/usr/local/etc/php.iniにコピーするコードを追加し、必要に応じて編集することをお勧めします。または、デフォルトのオプションを使用します。

+0

どのようにコードは、デフォルトのphp.iniを使用することができますか? – zwitterion

+0

まず手動で試してみてください。ドッカーを手動で起動し、bash経由でアクセスします。次に、見つかった場所から/ usr/local/phpにファイルをコピーします。ファイルを編集し、いくつかの設定を変更し、phpinfoで変更があることを確認します。次に、ドッカーファイルを編集して同じことを行います。ドッカーの修正+再構築+デプロイの方法を知っていますか? (ヒント、COPYコマンド!) – Nic3500

+0

私は知らないしかし、私は見つけるでしょう。私はドッカーとだけ言っています。 – zwitterion

0

短い答えは必要ありません。不足している、または拡張機能を追加する場合は、docker-php-ext-installまたはdocker-php-ext-enableを実行してDockerfileで拡張機能を追加できます。

ほとんどの一般的なものは、たとえばmbstringなどのように有効にすることができますが、あまり一般的でないものについては、peclを実行してパッケージを入手しなければならないことがあります。見てくださいthis Docker documentation page for more information on php extensions

0

私は同じ問題があります。私は/ usr/local/etc/phpにphp.iniファイルをコピーしましたが、何も起こりません。私は本当にPHPにデバッグするためにこれにアクセスする必要があります。私はエラーがありますが、私はそれらを見ることができません。

誰でもこの問題を解決する方法を知っていますか?

私は画像phpでドッカーを作成しています:5.6-apache

関連する問題