質問: Dockerfileからphp用のコンテナを作ってます。 phpの色々インストールはRUNで出来ると思うのですが、php.iniの置き換えがいまいちどんな感じでやるのが良いのかわかりません。 正規表現でいちいち変えるのも手間だと思うので、最終系のphp.iniを保存して、そのファイルに置き換えるって感じでしょうか...? Docker初心者なのでもしよろしければDockerfileをそのまま見せて頂けると嬉しいですm(__)m
回答: > > 正規表現でいちいち変えるのも手間だと思うので、最終系のphp.iniを保存して、そのファイルに置き換えるって感じでしょうか...? > > > php のバージョンが変わって、行がずれたときとかのことを考えて、patch コマンドを使うというのが良いかもしれません。 しかし、Dockerfile だと所詮 RUN コマンドでシェル起動になってしまいます。もう少し、高レベルなプロビジョニング(OSにいろいろなものをインストールしたり設定したりすること)言語を使うというのが別案になります。たとえば、 ansible などを使えば、パッチをあてる、データベースを設定するなど、高レベルで書けるので、可読性や汎用性が向上すると思います。ansible の playbook は Docker コンテナ以外のVPSや仮想化サーバに利用できますが、Dockerfile では Docker コンテナしか作れません。 参考:Ansibleで楽々!Dockerコンテナを構築をしよう Ansible でインストール (php 5.6)