2017年10月7日土曜日

Raspberry Pi上のDockerでphpPgAdminのイメージを構築する

以下のDockerfileを使用してRaspberry Pi上のDockerでphpPgAdminのイメージを構築する事ができます。

Dockerfile
FROM resin/raspberry-pi-alpine:3.6
ARG DB_HOST=localhost
WORKDIR /
RUN  apk update \
  && apk add --no-cache apache2 php5 php5-apache2 php5-pgsql openssl openrc \
  && wget https://downloads.sourceforge.net/project/phppgadmin/phpPgAdmin%20%5Bstable%5D/phpPgAdmin-5.1/phpPgAdmin-5.1.tar.gz \
  && tar xvfz phpPgAdmin-5.1.tar.gz  \
  && mv /phpPgAdmin-5.1 /opt/phppgadmin \
  && mkdir -p /run/apache2 \
  && { \
  echo '<Directory /opt/phppgadmin>'; \
  echo '  Order allow,deny'; \
  echo '  Allow from all'; \
  echo '</Directory>'; \
  } >> /etc/apache2/httpd.conf \
  && ln -s /opt/phppgadmin /var/www/localhost/htdocs \
  && sed -i -e "s/extra_login_security.*true;/extra_login_security\\'\\] = false;/" /opt/phppgadmin/conf/config.inc.php \
  && sed -i -e "s/conf\\['servers'\\]\\[0\\]\\['host'\\] = ''/conf['servers'][0]['host'] = '${DB_HOST}'/" /opt/phppgadmin/conf/config.inc.php \
  && \rm -f tar xvfz phpPgAdmin-5.1.tar.gz
EXPOSE 80
CMD ["/usr/sbin/httpd", "-D", "FOREGROUND"]

○イメージのビルド
docker build --build-arg DB_HOST=(PostgreSQLのIP) -t rpi-phppgadmin .
例:
docker build --build-arg DB_HOST=192.168.1.210 -t rpi-phppgadmin .
○コンテナの実行
docker run --rm -dit -p 80:80 rpi-phppgadmin
○コンテナの停止
docker ps -a
docker stop (停止したいコンテナのID)

○補足
動作環境 Raspberry Pi 3 Model B / Raspbian GNU/Linux 9 (stretch) / Docker 17.05.0-ce
Dockerイメージサイズ 79.7MB

○関連情報
Raspbian GNU/Linux 9 (stretch)上にDocker CEをインストールする
Dockerでphppgadminがインストールされたイメージを作成する
VagrantでPostgreSQLとphpPgAdminがインストールされた仮想マシンを構築する

○phppgadminのスクリーンショット

0 件のコメント:

コメントを投稿