カテゴリー
Apple

PHP GD をインストールするための Dockerfile の少し複雑な内容メモ

GD を使える php:5.6-apache の Dockerfile 内容

FROM php:5.6-apache
RUN  apt-get update && apt-get install -y \
    libfreetype6-dev \
    libjpeg62-turbo-dev \
    libpng-dev \
    && docker-php-ext-install gd pdo_mysql mysqli mbstring \
    && apt-get clean \
    && rm -rf /var/lib/apt/lists/* \
    && a2enmod rewrite
COPY ./php.ini /usr/local/etc/php/
COPY ./000-default.conf /etc/apache2/sites-available/000-default.conf

ポイント

カテゴリー
Linux

Docker の php:5.6-apache で .htaccess を有効にするまでの手順と学んだこと

やりたいこと

Docker の php:5.6-apache で、.htaccess を有効にしたいです。mod_rewrite を有効にしたい、と言えますね。

実現するには

の通りにすればできました!

今回、実現するにあたって、学んだことをノートします。

カテゴリー
Linux

【Docker】メモ。php:5.6-apache の httpd バージョンは 2.4.25 (Debian)

まとめ

  • php:5.6-apache
    • Apache/2.4.25 (Debian)
    • PHP 5.6.37
カテゴリー
Microsoft

Docker Compose で気軽に Apache PHP 環境を構築するメモ

ファイルの内容

  • 適当なフォルダに docker-compose.yml を作成
  • docker-compose.yml を置いたフォルダに、data/var/www/html フォルダを作る
  • data/var/www/html フォルダに HTML や PHP ファイルを置く
  • コンテナ起動後、ウェブブラウザで http://localhost 等にアクセスする
カテゴリー
Microsoft

ローカル開発環境の古い MySQL、バージョン 5.5 を Docker で再現できるかやってみましたらできました♪

はじめに

  • 開発のために MySQL 5.5 を手元の Windows にインストールしなければならない。
  • はっきりいって嫌だ。
    • Windows 起動時に自動的に MySQL も起動してしまったり。
    • Windows のポートも使用されてしまったり。
  • Docker で再現できるのでは?
    • Nginx を Docker で使ったとき、http://localhost でウェブページにアクセスできた。
    • Nginx を Docker で使ったとき、docker run 時、-p 8080:80 などとすれば、http://localhost:8080 でアクセスできた。
    • つまり、ホスト (Docker をインストールしたマシン) からコンテナに対して、localhost と指定したポート番号でアクセスできるということ。
  • A5:SQL Mk-2 – フリーの汎用SQL開発ツール/ER図ツール .. 松原正和 からアクセスできるか、やってみる。
カテゴリー
Microsoft

Docker for Windows をインストールしてアンインストールしてインストールしたら起動しなくなりました><。← 解決しました♪

はじめに

最初は、Docker for Windows のインストール手順をただ単に残そうと思ったのですけれども、あれこれ試しているうちに起動しなくなってしまいました。><。一応その記録を残しておきます。

追記。解決しました。再度のインストール前にもうひと手間必要でした。

  1. Docker for Windows アンインストール後、Windows の機能の有効化または無効化の、Hyper-V とコンテナーのチェックを外し、再起動する。
  2. Docker for Windows を再度インストールする。

環境と今回インストールできた Docker のバージョン

>ver

Microsoft Windows [Version 10.0.17134.191]

>docker --version
Docker version 18.06.0-ce, build 0ffa825

>docker-compose --version
docker-compose version 1.22.0, build f46880fe

>

インストール方法

カテゴリー
コンピューター

【Docker】volumes で永続化した場合、コンテナが消えようがイメージが消えようが、永続化したファイルは残る

永続化関連のまとめと遭遇したトラブル

  • コンテナを削除 (docker rm や docker-compose down など) しても、volumes のホスト側のファイルは残る。
  • MySQL の /docker-entrypoint-initdb.d/ に置いた SQL ファイルは、コンテナを作成 (1回目) してコンテナを削除して、コンテナを作成 (2回目) した場合、1 回目しか実行されない。
    • 1 回目で永続化されたファイルが出来上がり、これは削除されない。すると 2 回目では永続化された DB ファイルがあるため、実行されないのであろう。
    • したがって、開発中などの場合、永続化の設定をした状態で 2 回目のコンテナを作成する前に /docker-entrypoint-initdb.d/ の SQL を編集してもその内容はコンテナに反映されない。
    • 永続化したファイルを消せば、コンテナに反映される。
カテゴリー
コンピューター

【Docker】MySQL のコンテナ A に、MySQL のコンテナ B からシンプルに接続する方法

はじめに

Docker さえあれば、MySQL クライアントが用意できる、それもたった 1 行のコマンドで。

これが実現できましたのでノートいたします。

カテゴリー
コンピューター

【Docker】Nginx + PHP-FPM のシンプルな docker-compose.yml のポイントをノートしました

はじめに・環境

意外なことに注意しなければならない点があったため、メモいたします。

$ SW_VERS
ProductName:	Mac OS X
ProductVersion:	10.12.6
BuildVersion:	16G1510
$
$ docker --version
Docker version 18.06.0-ce, build 0ffa825
$ docker-compose --version
docker-compose version 1.22.0, build f46880f
$

Nginx + PHP-FPM のシンプルな docker-compose.yml のポイント

  • Nginx コンテナの volumes に HTML を置くディレクトリを指定しないと、HTML を処理してブラウザで表示できない。
  • 補足すると、PHP コンテナの volumes に PHP を置くディレクトリを指定してここに HTML ファイルを置いたとしても、その HTML ファイルはブラウザで表示できない。
  • 逆も然り。PHP コンテナの volumes に PHP を置くディレクトリを指定しないと、PHP を処理してブラウザで表示できない。
  • それぞれのコンテナごとに、必要な volume を省略しないで明確に記述すること。
カテゴリー
Apple

Nginx + PHP-FPM で unix ドメインソケットを使ったシンプルな docker-compose.yml を書きました。

はじめに

TCP/IP の 9000 ポートで Nginx から PHP へ接続することができるようになりました。これを、Unix ドメインソケットに変更したい、そんな中で得たことを残します。。