Adminer (Database Management)
概要
Adminer (formerly phpMinAdmin) は、PHPで記述された軽量なデータベース管理ツールです。 phpMyAdmin と同様の機能を持ちながら、単一の PHP ファイルで構成されているため非常に軽量で、セキュリティ面でも攻撃対象領域が小さくなります。
構成
Dockerfile 解析 (srcs/requirements/bonus/adminer/Dockerfile)
dockerfile
FROM debian:bullseye
# 必要なパッケージ: PHP, MySQL拡張, Wget
RUN apt-get update && apt-get install -y \
php \
php-mysql \
wget \
&& rm -rf /var/lib/apt/lists/*
RUN mkdir -p /var/www/html
# Adminer 本体のダウンロード
RUN wget "https://github.com/vrana/adminer/releases/download/v4.8.1/adminer-4.8.1.php" -O /var/www/html/index.php
# 実行ユーザーの作成 (rootでの実行を避ける)
RUN useradd -m -s /bin/bash adminer
RUN chown -R adminer:adminer /var/www/html
USER adminer
WORKDIR /var/www/html
EXPOSE 8080
# PHP ビルトインウェブサーバーでの起動
CMD ["php", "-S", "0.0.0.0:8080"]役割と設定
- 軽量性: Nginx や Apache などを別途インストールせず、PHP のビルトインサーバーを使用して最小構成で動作させています。
- 配置: Nginx コンテナからのリバースプロキシ (
proxy_pass http://adminer:8080/) を経由してアクセスされます。
使用方法
- ブラウザで
https://<DOMAIN_NAME>/adminer/にアクセスします。 - ログイン画面が表示されます。
- System: MySQL
- Server:
mariadb(コンテナ名) - Username: (
.envで設定したユーザー名) - Password: (
.envで設定したパスワード) - Database: (
.envで設定したDB名)